タグ

sqliteに関するabcb2のブックマーク (4)

  • Pragma statements supported by SQLite - Third impact

    PRAGMA command は、SQLite ライブラリの動作を変更したり (テーブル以外の)内部データについてライブラリに問い合わせるために使う特殊な コマンドです。 PRAGMA コマンドは、(SELECT、INSERT のような)他の SQLite コマンドと同じ インターフェースを使って発行しますが、以下の重要な点が異なっています。 将来のリリースにおいて特定のプラグマステートメントが廃止されたり、他のものが追加されたり するかもしれません。 注意して使用してください。 未知のプラグマを発行してもエラーメッセージは生成されません。 未知のプラグマは、単に無視されます。 これは、プラグマステートメントにタイプミスがあったとしても、ライブラリはその事実を 通知しないということを意味します。 いくつかのプラグマは、実行時ではなく SQL をコンパイルする間に効果を発揮します。 これは、

    abcb2
    abcb2 2011/03/31
  • DBI-DBDについて

    DBI/DBDの使い方 この文章は、perlcgi等のプログラムができ、SQLの基的な使い方を知っているひとを対象に書かれています。 また、DBI/DBDモジュールを利用するには、perl5のオブジェクト指向(風)プログラミングの知識もある程度以上は必要です。 DBI/DBDとは、perlとデータベースの間をとりもってくれる汎用インターフェイスです。 DBIモジュールとDBDモジュールからできており、DBDモジュールは、各データベースごとに存在します。 プログラマは、DBIモジュールのルールにしたがってプログラミングすることで、どのようなデータベースにも、同じようにアクセスするプログラムを書くことができます。 ここでは、DBD/pg(PostgreSQLDBDモジュール)を使った例を提示しますが、基的には、どのようなDB相手でも同様のことができます。

  • (SQLite + Perl) prepare関数とcommitによる劇的速度向上 (r271-635)

    PerlDBIモジュールを用いてSQLiteデータベースにINSERTを行う場合、prepare関数とcommitを適切に使うことで大幅に実行速度が向上する。 ポイントは次の2点 (1)prepareのプレースホルダを使い、ステートメントを使いまわす (2)AutoCommitをOFFにして、明示的にcommitを行う 特に、(2)の効果は劇的に大きい。 ■ 実験 (1)と(2)の双方を行った場合 約56000行の追加にかかった時間 : 26.9秒~27.1秒 (2)のみを行った場合 約56000行の追加にかかった時間 : 30.9秒 ~31.9秒 (1)も(2)も行わなかった場合 約56000行の追加にかかった時間 : 651.2秒 ■ 実証コード #!/usr/bin/perl use strict; use DBI; use Time::HiRes; my $dbh = undef

    abcb2
    abcb2 2011/03/17
  • DBD::SQLite 1.30_04/05 - Charsbar::Note

    遅ればせながらDBD::SQLiteの新しい開発版が出ました。今回の目玉はLaurent Dami氏が実装してくださったFTS3の拡張機能。これを使うとDBD::SQLiteでも簡単に日語全文検索ができるようになります。 使い方はこんな感じ。 use strict; use warnings; use DBI; use Text::MeCab; my $mecab = Text::MeCab->new; my $dbh = DBI->connect('dbi:SQLite::memory:'); $dbh->do('create virtual table foo using fts3 (content, tokenize=perl "main::tokenizer")'); my $sth = $dbh->prepare('insert into foo values (?)'); $

    DBD::SQLite 1.30_04/05 - Charsbar::Note
  • 1