perlプログラムでDBIを用いてSQLを操作する手順は、大変簡単です。 基本的には、次の5つのことを、次の順に記述することによって出来ます。
次のプログラムは、「データベースegiのテーブルmeiboの内容をすべて表示する」というプログラムです。
#!/usr/bin/perl use DBI; <-----------------------------------------1. DBI使用宣言 $username="egi"; $dbh = DBI->connect("dbi:Pg:dbname=egi",$username) <------2. オープン or die "Cannot connect: " , $DBI::errstr; $sth = $dbh->prepare("select * from meibo ") <------3. SQL前準備 or die "Cannot prepare: " , $dbh->errstr(); $sth->execute() or die "Cannot execute: " , $sth->errstr(); <-4. SQL実行 while ( @row = $sth->fetchrow_array() ){ <-------5. 処理 print "@row\n"; } |
上記プログラムの5は、perlの命令です。残りの1、2、3、4は、DBI/DBDの命令です。さらに、3の「SQL前準備」の中に記述されている、
select * from meiboは、SQL命令で「テーブルmeiboからすべての内容を検索せよ」を意味しています。
このプログラムを実行させると、次のような結果になります。
[egi@myouga]$ perl cgi40.pl <----perlプログラム cgi40.plを実行 ハル 2 宇部市 0836-88-8888 <----- ミミ 2 宇部市 0836-33-3333 \ ポチ 10 山口市 0839-66-6666 出力結果 クー 4 宇部市 0836-99-9999 / サチ 3 下関市 0832-77-7777 <----- [egi@myouga]$ |
以後、上記の例を用いてそれぞれの命令を説明することにします。