我想在Linux/Apache服务器上使用PHP & sqlite实现一个简单的数据库。使用PDO写入SQLite数据库
我可以很容易地阅读,但我不能执行任何UPDATE,DELETE或INSERT操作。致命错误我得到的是:
General error: 5 database is locked
举个简单的例子:
$pdo=new PDO('sqlite:test.sqlite');
$pdo->exec("INSERT INTO menus(id,name,description) VALUES(6,'test','this is a test')");
这也是在等待很长一段时间(约一分钟),然后报告上述错误。
我已经阅读了很多建议,其中许多建议数据库或其包含的文件夹应该是可写的。他们是。 (或者是,我让它们成为世界上可写的测试用例,并且在失败时使它们恢复更合理的权限。)
我没有任何困难使用其他技术写入数据库,例如Linux中的sqlite3命令和SQLite管理器插件Firefox浏览器。
我会欢迎任何有关如何使这项工作的意见。
为了澄清,您可以使用另一个程序向此数据库写入数据,而PDO将其报告为锁定? – Brad
没错。我已经检查过没有其他进程正在打开数据库。马克 – Manngo
user1413856,这是离奇的!进入这种领域 - 并不是每天都会发生,您使用的是什么版本的PHP?您使用的PDO驱动程序的版本(如果有)?如果你建立一个新的干净的数据库(没有数据,单个表)并且尝试会发生什么? – Brad