0

新しいWebサイトでSQLiteを実行したかったのですが、実行/動作しません。 PHPINFO()SQLiteに関する次の情報を返します。

pdo_sqlite
PDO Driver for SQLite 3.x   enabled
PECL Module version     1.0.1 $Id: pdo_sqlite.c,v 1.10.2.6.2.2 2007/03/23 14:30:00 wez Exp $
SQLite Library  3.4.2 

SQLite
SQLite support  enabled
PECL Module version     2.0-dev $Id: sqlite.c,v 1.166.2.13.2.9 2007/05/19 17:58:22 iliaa Exp $
SQLite Library  2.8.17
SQLite Encoding     UTF-8 

ここにテストスクリプトがあります:

<?php

error_reporting(E_ALL);

try {
    $db = sqlite_open('mysqlitedb');
    var_dump($db);
    var_dump(sqlite_last_error());
} catch (Exception $e) {
    var_dump($e);
}
// Output:
// bool(false) NULL

なぜそれが機能しないのですか?

4

2 に答える 2

1

なぜそれが機能しないのですか?

このsqlite_last_error関数は、データベースリソースハンドルを最初のパラメーターとして想定しているため、使用しません。

var_dump(sqlite_last_error());

さらに、データベースリソースハンドルは明らかに偽です。したがって、データベースリソースハンドルはまったくありません。データベース接続が確立されていないため、その関数はエラーメッセージを表示できません。

于 2012-08-30T11:22:55.490 に答える
0

使ってください

sqlite_open('mysqlitedb', 0666, $sqliteerror)

そうすれば、$sqlliteerror変数を介して機能しなかった理由を取得できます。

于 2012-08-30T11:07:47.217 に答える