2011年6月6日月曜日

SQLite関数で「file is encrypted or is not a database」というエラーが出る場合

PHPのsqlite_open関数でSQLiteのデータベースを開こうとしたら「file is encrypted or is not a database」というエラーが出ました。
直訳すると「ファイルは暗号化されているか、データベースではないです」ということ。

どうやらSQLiteの互換性の問題のようです。
SQLite3とそれ以前のSQLiteはかなり異なった設計なのでPHPの旧関数は使えない模様。
PDOで開けば解決します。

データベース開くのに固有の関数はよろしくないですね。
ただし、テストなど色々試したい場合があると思いますので一応メモです。

PHP5でも組み込まれているのがSQLite2.8などの場合があります、そうすると思わぬ互換性問題が発生しますのでお気をつけを。

0 件のコメント:

コメントを投稿

NBA選手シーズンごとの平均リバウンド

NBA選手のシーズン当たりのリバウンド シーズン毎の得点に続き、シーズン毎のリバウンドを可視化してみます。 外れ値を省くために、1シーズン40試合以上出場した選手で構成しています。 #! /usr/bin/env python import numpy as np imp...