我正在编写如下所示的 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(当从第一个表行(从 UI) 点击 Go 按钮时)
在 Z 行,在控制台上它打印 hello.mp4(当从 第二表行(从 UI)点击 Go 按钮时)
问题陈述:
我在 A 行有一个查询以更新 Podcast_Export 表,但它不起作用并在 M 行抛出错误:
Error in fetch database is locked
此时,我在Podcast_Export 表中有以下内容:
我使用的SQLite版本是3.27.2
最佳答案
SQLite3::exec — Executes a result-less query against a given database
它返回一个 bool 值。 “无结果”查询通常是 INSERT、UPDATE、DELETE,但不是 SELECT。
您可能想研究如何使用 querySingle得到想要的结果。
关于php - 如何使用 php 更新 SQLite 表中的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56706798/