用php打开sqlite数据库的时候有时候会遇到错误提示:file is encrypted or is not a database。这是因为php默认sqlite_open()只支持sqlite2版本,暂不支持sqlite3版本;若连接sqlite3必须用sqlite_pdo去连接。
需要以下库的支持:
extension=php_pdo_sqlite.dll extension=php_sqlite.dll extension=php_pdo.dll
php使用pdo打开sqlite数据库的方法示例:
$dir = 'sqlite:YourPath/DBName.db'; $dbh = new PDO($dir) or die("cannot open the database"); $query = "SELECT * from dummy_table"; foreach ($dbh->query($query) as $row) { echo $row[0]; }
这样php打开db文件的file is encrypted or is not a database错误就解决了。
转载请注明:Yovae Studio » php操作高版本sqlite