PDO Singleton类没有连接到sqlite数据库。 PHP

时间:2012-04-16 16:07:43

标签: php sqlite pdo

我有一个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)。

由于 添

1 个答案:

答案 0 :(得分:1)

代码看起来很好,我的感觉是问题是路径/database/library.sqlite

这是一条绝对的道路。那么il会搜索文件系统根目录下的数据库目录是你想要的吗?或者数据库是一个与运行脚本相同级别的目录?在那种情况下sqlite:database / library.sqlite'