Perl - CPAN - DBD::Pgパッケージ
ここに掲載するものは、塚本さんにパッケージ化して頂いているZaurus用Perl 5.6.1に追加でインストールするPerlライブラリのDBD::Pgである。
ソースはここからダウンロードし、dev-img-1.3でセルフコンパイルした。
download:lib-perl-dbd-pg_1.32-1_arm.ipk
このパッケージとDBIパッケージ、PostgreSQL 7.4.16をZaurusにインストールすれば、Perlによってデータベースにアクセスすることが可能になる。
現時点の最新DBD::Pgは1.49だが、最近のものはテストが正常に動作しないため、動作するバージョンで一番新しいものを採用した。
手始めの使い方は以下の通りである。
ただし、予め "createdb zaurus" コマンドでデータベースを作成済みであることが前提である。
# "ID<TAB>名前<TAB>年齢"のテキストをデータベースに登録 use DBI; $dbh = DBI->connect("dbi:Pg:dbname=zaurus"); $tbl_name = "test2"; $create_tbl =<<__CREATE_TBL__; create table $tbl_name ( id int, name varchar(40), age int ) __CREATE_TBL__ @tables = $dbh->tables; $exist = 0; foreach $name (@tables) { if ($name =~ /\.$tbl_name$/) { $exist = 1; last; } } if (!$exist) { $dbh->do($create_tbl) or die; } while (<>) { chomp; ($id, $name, $age) = split(/\t/); $id = int($id); $name = substr($name, 0, 40); $age = int($age); $insert = "insert into $tbl_name values ($id, '$name', $age)"; $dbh->do($insert) or die; } END { $dbh->disconnect if $dbh; }
DBD::Pgの詳細は以下をご覧頂きたい。
英語:http://search.cpan.org/~rudy/DBD-Pg-1.32/Pg.pm
日本語:http://perldoc.jp/docs/modules/DBD-Pg-1.22/Pg.pod