DBD::Pgのインストール


libpq.soファイルが存在するのに以下のようなエラーがでてDBD::Pgがうまく動かない場合、/etc/ld.so.confを正しく設定しましょう。

DBI - database handle


perlからデータベースに接続するにはDBIモジュールを使用します。

DBIx::Class::Schema::Loader


DBIx::Class::Schema::Loaderを使用すればスキーマを作成する手間が省ける。

SQL::Abstract


SQL::AbstractはPerlのデータ構造からSQL文を自動で作成してくれるモジュールになります。

doメソッド


通常SELECT文などはprepareしてからexecuteしますが、SELECT以外のステートメントではdo()で代用できます。

fetchall_arrayref


fetchall_arrayrefは全てのレコードを取り出し、配列->配列(中身が配列へのリファレンスである配列)を返します。

fetchrow_hashref


fetchrow_hashrefはレコード行をハッシュへのリファレンスとして取得します。

カラム名の一覧を取得


カラム名を取得するには $sth->{NAME}を使用すればよい。

ラージオブジェクトのインポート


ラージオブジェクトのインポートにはlo_importを使用します。

ラージオブジェクトのデータを取得


ラージオブジェクトのデータを取得するには、ただ単にSELECTしただけではうまくいきません。以下のように、lo_open, lo_read, lo_closeを使用します。

ラージオブジェクトの削除


ラージオブジェクトの削除にはfunc(OID, 'lo_unlink') を使用します。

ラージオブジェクトの書き込み


データベースへラージオブジェクトを書き込む場合、書き込みの処理とOIDを格納する2ステップに分かれます。

該当するレコードの数を取得するには


$sth->execute の後、$sth->rowsとすればレコードの数を取得することができます。