このスレッドは解決済です(未解決に戻す場合はこちら)
<<戻る

PHP5 における SQlite2 の利用 このメッセージに返信する
日時: 2012/02/13 18:29
名前: cadmus
URL:
PHP 初心者の cadmus と申します。 表題の件で質問させていただきます。 よろしくお願いします。

Apache 2.0.54、PHP 5.0.4、SQlite 2.8.14 でシステムを運用していました(内部向けの小規模なシステムなので、バージョンアップの必要がなく、古いままでした)。 ところが、今回、このシステムを別の PC に移すことになりました。 OS は新旧いずれも Windows XP です。

Apache 2.2.22、PHP 5.3.10 をダウンロードしてインストールするところまで何とかこぎつけましたが、現在は SQlite のバージョンが 3 になっており、従来の関数を利用することができません("undefined function" のエラーになります。)。 データベースを移行してスクリプトを書き換えるような余裕はありません。 PHP 5.3.10 上で 何とか SQlite 2 を動かすことはできないでしょうか。

なお、ext フォルダーには当然、"php_sqlite3.dll" しかなく、"php_sqlite.dll" はありません。 インターネットのサイトで "php_sqlite.dll" のファイルを落としてから ext フォルダーにコピーして、"php.ini" に設定を書き加えたりしましたが、まったく反映されず、従来の関数はエラーのままです。

インターネット上でいろいろ検索して回ったのですが、情報が見当たりませんでした。 どなたかご教示いただければ幸いです。 よろしくお願いします。
記事編集 編集
Re: PHP5 における SQlite2 の利用 このメッセージに返信する
日時: 2012/02/13 19:04
名前: stranger
URL: http://ja.528p.com/
php 5.0.xから5.3.xに簡単に上げられないと思うけど
最初に下記のドキュメントを読みましょう
http://jp.php.net/migration53

5.2.xならsqlite2かも?
記事編集 編集
Re: PHP5 における SQlite2 の利用 このメッセージに返信する
日時: 2012/02/14 09:19
名前: cadmus
URL:
Cadmus です。

こんなに早くレスがつくとは思いませんでした。 まことにありがとうございます。

PHP に関しては、よほど特殊な機能を使わない限り、上位互換性は確保されているものと考えていました。
ご提供のサイトを見ましたが、「下位互換性のない機能」といった記述を見ても、関係のないものばかりです。 これを見ると、一見移行が可能なようにも見えます。

ところが、移行ガイドを見ても記述が見当たらない(探し方が悪い?) sqlite に関しては、PHP の最新版では、どうやら旧データベース、旧関数が一切使えないようです。 これは致命的です。

しかたがないので、当面は PHP 5.2 あるいは元のバージョンをインストールしてしのぐこととします。

sqlite2 から sqlite3 への移行はみなさん苦労されているようです。 こんなに一方的に仕様が変更されるのでは、永続的な業務システムには使えませんね。 将来的には sqlite2 → sqlite3 に移行するのではなく、MYSQL か他のデータベースに移行しようと思います。

ありがとうございました。
記事編集 編集
件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -