on_connect_do

で、下記の PRAGMA synchronous = off だとか、MySQL の SET NAMES utf8 みたいなのを DBIC でやるばあいは

$schema->storage->on_connect_do( ['SET NAMES utf8'] );

みたいにするわけだけど、これは今はschemaクラス自体には書いておけないのでめんどくさい。(0.699..のほうではできるようになっている)

Catalyst でつかうだけなら、今の DBIC でも、Model::DBIC::Schema の connect_infoon_connect_do を書いておける。

connect_info => [
    'dbi:SQLite:dbname=foo.db',
    { on_connect_do => [ 'PRAGMA synchronous = OFF', ], }
],

blblack++

by typester / at 2006-06-20T19:17:00 / perl · dbic / Comment

PRAGMA synchronous

IRC で興味深い話題。

SQLite には synchronous という PRAGMA があり、これが off(0) だと MySQL でいうと MyISAM っぽく、full(2) だと InnoDB っぽくなるらしい。デフォルトは full。

ので、パフォーマンス重視の場合、PRAGMA synchronous = off; しろと。

by typester / at 2006-06-20T19:12:00 / sqlite / Comment

shag の日記 - undef な SCALAR を ARRAY でデリファレンスすると、値が変わる

ん、これ普通じゃね。値が変わるというか、初期化されてるだけじゃないかしら。

by typester / at 2006-06-20T15:22:00 / perl / Comment