SQLite

SQLiteコンパイル

sqlite-amalgamation-XXX.zip持ってきて cl /Ox /favor:INTEL64 /GL /GS /EHsc /Qpar /DSQLITE_DEFAULT_FOREIGN_KEYS /Fesqlite3.exe shell.c sqlite3.c cl /Ox /favor:INTEL64 /GL /GS /EHsc /Qpar /DSQLITE_DEFAULT_FOREIGN_KEYS=1 /DSQLITE_ENABLE_FTS4 /…

ビューにトリガーを張る

SQLiteだとビューは読み取り専用で、INSERT、UPDATE、DELETEできないので、代わりにトリガーを使う。とりあえずINSERTだけメモ。最小限しか書いてないので、実際に使うときはもう少し必要だろうね。NOT NULL制約がかかってたりするかもしれないし、UPDATEとD…

DBD::SQLite::Amalgamation

DBD::SQLite::Amalgamation 3.6.1.2をインストール。こっちを使ってみる。http://d.hatena.ne.jp/tokuhirom/20080727/1217140312で公開されてるパッチを当ててコンパイル。t\12create_collation.tが通らない*1んだけど、文字コードをiso-8859-1からutf-8にし…

プレースホルダ

# ダメ my $sth = $dbh->prepare('SELECT * FROM image_tag WHERE tag IN(?, ?) GROUP BY image HAVING count(image) == ?'); $sth->execute(10, 42, 2); # イイ! my $sth = $dbh->prepare('SELECT * FROM image_tag WHERE tag IN(?, ?) GROUP BY image HAV…