我正在处理如下所示的php代码:
class MyDB extends SQLite3
{
function __construct()
{
$this->open('database/Podcast.db');
}
}
$db = new MyDB();
$f = $mp4_files[$_POST['id']];
$parts = pathinfo($f);
switch ($parts['extension']) {
/* Conversion of mp4 into mp3 is happening */
}
print_r($f); // Line Z
$result = $db->exec("UPDATE Podcast_Export SET Status = 'Completed' WHERE House_number = '" . $f . "'"); // Line A
if ($result == FALSE) {
echo "Error in fetch " . $db->lastErrorMsg(); // Line M
}
在第Z行上,它在控制台上打印 36031P.mp4 (从第一个表格行(从用户界面)单击“转到”按钮时 )
在第Z行上,在控制台上打印 hello.mp 4(当从第二个表行(从用户界面中)单击“转到”按钮时 >)
问题陈述:
我在A行有一个查询,以便更新 Podcast_Export 表,但是在M行它不起作用并抛出错误:
Error in fetch database is locked
此刻,我在 Podcast_Export 表中具有以下内容:
我正在使用的 SQLite版本是 3.27.2
答案 0 :(得分:0)
SQLite3 :: exec —对给定的数据库执行无结果查询
它返回一个布尔值。 “无结果”查询通常是INSERT,UPDATE,DELETE,但不是 SELECT。
您可能想研究如何使用querySingle获得所需的结果。
答案 1 :(得分:0)
通常,数据库处于锁定状态是在您具有打开的DB进程时发生的。 检查以下网址,希望对您有帮助。