0

我想在我的新网站上运行 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 回答