昨日から今日にかけて はまったこと。 DBI + DBD::mysql + MySQL で、RaiseError が効かない。 use DBI; my $dbh = DBI->connect( 'DBI:mysql:dbname', 'user', 'password', {AutoCommit => 0, RaiseError => 1, PrintError => 0} ) || die; my $sth = $dbh->prepare("select * from not_exist_table"); $sth->execute; 上記のように、存在しないテーブルやカラムに対して DML を発行しようとすると、 RaiseError を ON にしておけば SQL 解析の prepare で勝手に die してくれる。 エラーはこんな感じ。 DBD::mysql::st execut