CDBI を使ってて、 __PACKAGE__->set_sql(Foo =><<'SQL'); SELECT __ESSENTIAL__ FROM __TABLE__ WHERE foo = ? AND bar = ? SQL sub do_something { my($class, $foo, $bar) = @_; my $sth = $class->sql_Foo; $sth->execute($foo, $bar); return $class->sth_to_objects($sth); }Class::DBI::Plugin::Iterator を use しておいてこんなんしとくと、CDBI の $VERSION が古いやつの場合に、scalar context で動いてくれない。 動いてくれんというか、空っぽの Iterator が返る。 3.x 系ではちゃんと動いたん