プログラムの中で実行したいSQL文はあらかじめ前もって準備しておくのが定石です。 前処理では、prepareというメソッドを使用して定義しておきます。重要なことは、ここでは命令を準備しておくだけで、実際にデータベースにアクセスするのは、この次の実行段階です。
次の例は、すでにオープンされたデータベース($dbh)に対して「テーブルmeiboからすべての内容を検索する」SQL文を準備しています。 ここでは、検索時にエラーが起こった場合はエラーメッセージを出力しプログラムを終了させています。
【記述例】 $sth = $dbh->prepare("select * from meibo ") or die "Cannot prepare: " , $dbh->errstr(); |
【形式】
$sth = $dbh->prepare("SQL命令") or die エラーメッセージ; |
[egi@myouga]$ perl cgi40.pl DBD::Pg::st execute failed: ERROR: meib: Table does not exist. Cannot execute: ERROR: meib: Table does not exist. [egi@myouga]$