| |||||||||||||||||||||
サイト内検索
カスタム検索
|
PHP プログラミング
» PHP で SQLite を利用する方法
PHP で SQLite を利用する方法SQLite は軽量のインプロセス・データベースエンジンで、今日の多くの主要なプログラムで広く利用されています。 例えば Firefox 等でも、ブックマークやヒストリ等様々なプログラムデータのストレージとして、SQLite を利用しています。 (参考: Firefox における SQLite の利用) この資料では SQLite を PHP から利用する簡単な例を示します。 SQLite のコマンドラインからの利用PHP から SQLite を利用する前に、コマンドラインから SQLite を利用してみましょう。 コマンドラインツール (sqlite3.exe) は、SQLite のダウンロードページからバイナリをダウンロード可能です。 2010年3月25日現在、SQLite のバージョンは 3.6.23 が推奨版です。 次の手順で test.db という名前の SQLite データベースファイルを作成して、その中に table1 という名前のテーブルにフィールドを二つ (name と email) 作成し、 さらにその table1 の中にレコードを1件作成します。 > sqlite3 test.db SQLite version 3.6.23 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> create table table1 ( name varchar(255), email varchar(100) ); sqlite> insert into table1 values ('Keisuke Oyama', 'dadosan@keicode.com' ); sqlite> .exit それでは、ここで作成した SQLite ファイルを PHP から利用します。 ちなみに、バージョン違いの場合、"file is encrypted or is not a database" (ファイルが暗号化されているか、またはデータベースではありません) という エラーメッセージが返ります。 SQLite の有効化PHP から SQLite を利用するために、php.ini にて SQLite のエクステンションを有効にします。 PHP の SQLite 用のエクステンションには2種類あります。1つは sqlite_* 系のライブラリで、もうひとつは PDO における SQLite ドライバーです。 sqlite_* は SQLite のバージョン 2.x 用であり、PDO の SQLite ドライバーは SQLite 3.x に対応します。 今回は上記のように、SQLite3 のコマンドツールで作成したデータベースを PHP から利用することを考えているので、PDO エクステンションのみを有効にすれば十分です。 extension=php_pdo.dll ;extension=php_sqlite.dll extension=php_pdo_sqlite.dll sqlite_* を利用する方は php_sqlite.dll も有効化しておいてください。 PHP から SQLite 3 を利用するそれではいよいよ PHP から SQLite データベースを読みます。 PDO の DSN は 'sqlite:<ファイル名>' となることに気をつけてください。 <?php try { $dbh = new PDO('sqlite:test.db'); $res = $dbh->query( 'SELECT * FROM table1'); while( $row = $res->fetch( PDO::FETCH_ASSOC ) ) { var_dump( $row ); } } catch( PDOException $e ) { echo 'Connection failed: ' . $e->getMessage(); } ?> 実行結果は以下のようになります。
> php test.php
array(2) {
["name"]=>
string(13) "Keisuke Oyama"
["email"]=>
string(19) "dadosan@keicode.com"
}
>
確かに上記コマンドで作成したレコードが確認できました。 | ||||||||||||||||||||
© 2008-2010 小山圭介 All Rights Reserved. |
|||||||||||||||||||||