SQLite バージョン 3.xx

POPFile は SQLite 3.x と互換性があります!

簡単な概要

POPFile 1.1.0 以降では、DBD::SQLite のどのバージョンも問題なく使用できます。

  • DBD::SQLite 0.31 とそれ以前 (SQLite2) なにも変更せずに使用することができます(ただし、v1.1.0 以降を試して、データベースが Sqlite3 形式になっている場合を除きます)
  • DBD::SQLite2 0.32 - 0.33 (SQLite2) 変更が 必要です:
    設定ファイルの Bayes_dbconnect を
    dbi:SQLite:dbname=$dbname…
    から
    dbi:SQLite2:dbname=$dbname…
    に変更します。
  • DBD::SQLite 1.x (SQLite3) なにも変更せずに使用することができます。

注意; POPFile v1.1.0 以降はデフォルトで DBD::SQLite 1.x (SQLite3) を使用します。DBD::SQLite2 (SQLite2) と DBD::SQLite (SQLite3) がインストールされている場合、POPFile は自動的に SQLite2 形式のデータベースを SQLite3 形式に変換します。DBD::SQLite2 (SQLite2) だけがインストールされている場合、POPFile は DBD::SQLite2 (SQLite2) を使用し続けます。

注意; SQLite3 形式のデータベースは SQLite2 形式とは互換性がありません。POPFile がデータベースを変換したあとは、変換されたデータベースを古いバージョンの POPFile (v1.0.1 以前) で使用することはできません。POPFile はデータベースを変換する際に、古いデータベースをデータフォルダ内の「popfile.db-sqlite2」というファイルにバックアップします。古いバージョンに戻りたい場合は、「popfile.db」を削除し、この「popfile.db-sqlite2」を「popfile.db」にリネームして使用してください。

背景

2004 年の 7 月に SQLite バージョン 3 がリリースされました。このバージョンは SQLite バージョン 2 との間に重大な変更があります。この変更にはデータベースファイル形式の変更も含まれ、これによって 2 つのバージョンには互換性がありません。

  • SQLite 3 のデータベースは SQLite 2 のデータベースと互換性がありません。SQLite 2 のデータベースは、SQLite 3 形式に変換されなければいけません。
  • SQLite 3 のコマンドラインツールは、混乱を避けるために sqlite3 という名前に変更されました。SQLite 2 のコマンドラインツールは、sqlite のままです。
  • 内部的には、SQLite 3 の命令とライブラリはすべて最後に 3 がつけられています。これも混乱を避けるためです。

SQLite に接続するための Perl インタフェースモジュールの新しいバージョン、DBD::SQLite も 7 月にリリースされました。残念ながら、このリリースはこれまで使っていたものと同じ名前、番号のスキームのために、混乱を引き起こしました。

  • CPAN - いくつかのアップデートされたバージョンが CPAN でリリースされています
    • DBD::SQLite2 0.32 - 0.33 - このバージョンは、SQLite 2 と互換性があります(現在の POPFile とも互換性があります)
    • DBD::SQLite 1.00 - 1.14 - これらのバージョンは SQLite 3 と互換性があります(現在の POPFile とも互換性があります)
  • PPM - いくつかのアップデートされたバージョンが Activestate リポジトリでリリースされています
    • DBD::SQLite2 0.33 - このバージョンは、SQLite 2 と互換性があります(古いバージョンの POPFile で使用されていました)
    • DBD::SQLite 1.13 - このバージョンは SQLite 3 と互換性があります(現在の POPFile で使用されています)

あなたのマシンにインストールされた DBD::SQLite のバージョンを調べるためには、以下の 1 行 Perl スクリプトを使用します。

 perl -MDBD::SQLite -e 'print $DBD::SQLite::VERSION'

原文

 
jp/sqlite3.txt · Last modified: 2008/12/03 06:04 by amatubu

Should you find anything in the documentation that is incomplete, unclear, outdated or just plain wrong, please let us know and leave a note in the Documentation Forum.

Recent changes RSS feed Donate Driven by DokuWiki
The content of this wiki is protected by the GNU Fee Documentation License