繁体   English   中英

sqlite3 PDO错误

[英]sqlite3 PDO error

我试图使用PDO(PHP 7.1.1)打开加密的sqlite3数据库。

$db = new PDO('sqlite:mydb.sqlite','','password');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$results = $db->query('SELECT * from Table');

上面的代码抛出以下异常:

Uncaught PDOException: SQLSTATE[HY000]: General error: 26 file is encrypted or is not a database

我的连接字符串是否正确? 是否可以使用PDO打开加密的sqlite3数据库?

PDO SQLite接口的文档没有提到加密,也没有提到PDO类的文档。 我唯一知道的是SQLite3类 ,它在构造函数中有一个加密密钥的参数。

根据文件:

encryption_key - 加密和解密SQLite数据库时使用的可选加密密钥。 如果未安装SQLite加密模块,则此参数无效

正如您对问题的评论中所提到的,还有其他答案可以解决安装和使用PHP的sqlite加密模块的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM