@kyanny's blog

My thoughts, my life. Views/opinions are my own.

DBI.pm ではひとつのステートメントハンドルで複数の SQL を実行することはできない?

use strict;
use DBI;
my $dbh = DBI->connect('dbi:mysql:hoge', 'root', '');
my $sth = $dbh->prepare(<<SQL);
create temporary table hoge (id int);
drop table hoge;

こういうふうに、 ; で区切って複数の SQL をかいておいて一度に実行させることはできないようだ。


Some command-line SQL tools use statement terminators, like a semicolon, to indicate the end of a statement. Such terminators should not normally be used with the DBI.