我想在我的新网站上运行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
为什么不起作用?
答案 0 :(得分:1)
为什么不起作用?
sqlite_last_error
函数需要将数据库资源句柄作为第一个参数,不要使用它:
var_dump(sqlite_last_error());
此外,您的数据库资源句柄显然是错误的 - 因此根本不是数据库资源句柄。由于没有建立数据库连接,该功能无法提供错误消息。
答案 1 :(得分:0)
请使用
sqlite_open('mysqlitedb', 0666, $sqliteerror)
通过这种方式,您可以通过$ sqlliteerror变量检索它无法正常工作的原因。