我有一个sqlite数据库,我没有自己创建,而是来自一个名为'database'的文件夹中的可靠来源。此文件夹存储在localhost文件夹中的另一个文件夹中。
但是,当我尝试运行一个简单的应用程序时,我收到的错误是:
SQLSTATE [HY000] [14]无法打开数据库文件
有谁知道这是指什么?我怀疑这是我的代码,但现在是:
pdo.class.php
class pdoClass {
// private statics to hold the connection
private static $dbConnection = null;
// make the next 2 functions private to prevent normal
// class instantiation
private function __construct() {
}
private function __clone() {
}
public static function getConnection() {
// if there isn't a connection already then create one
if ( !self::$dbConnection ) {
try {
self::$dbConnection = new PDO('sqlite:/database/library.sqlite');
self::$dbConnection->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
}
catch( PDOException $e ) {
echo $e->getMessage();
}
}
// return the connection
return self::$dbConnection;
}
}
?>
然后由另一个类引用,该类要求此类将任何sql数据输出为XML格式。我的sqlite数据库似乎不想打开的任何帮助非常感谢(文件设置为read& write)。
由于 添
答案 0 :(得分:1)
代码看起来很好,我的感觉是问题是路径/database/library.sqlite
这是一条绝对的道路。那么il会搜索文件系统根目录下的数据库目录是你想要的吗?或者数据库是一个与运行脚本相同级别的目录?在那种情况下sqlite:database / library.sqlite'