如何使用php更新SQLite表中的数据?
我正在编写一个php代码,如下所示:如何使用php更新SQLite表中的数据?,php,html,sql,sqlite,Php,Html,Sql,Sqlite,我正在编写一个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']) {
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\u Export表,但它不工作,并且在M行有抛出错误: 目前,我在播客导出表中有以下内容: 我正在使用的SQLite版本是来自 SQLite3::exec-对给定数据库执行无结果查询 它返回一个布尔值。“无结果”查询通常是插入、更新、删除,但不是选择
您可能需要研究如何使用来获得所需的结果 通常,当您有一个开放的数据库进程时,数据库被锁定。 查看以下网址,希望能对你有所帮助
问题是,提交后您将在哪里使用这些值?
data id=“
如果您只是使用php,那么它是无用的。这是一个好问题。我想我的代码有点小错误。请记住,当新的mp4文件进入目录时,状态应该是Podcast\u Export
表中的Go
,我们添加了以下查询:foreach($mp4\u文件作为$value){$count=$db->querySingle(“选择count(*)作为Podcast\u Export中的count,其中House\u number='“$value.”);if($count exec)(“插入播客_导出(房屋编号、状态)值(“$value.”,“'Go')”);}}
当mp4文件转换成mp3时,状态应该在Podcast_导出表中完成。这很难理解..您必须共享完成example@devpro我已更新了我的问题。请告诉我如何解决该错误。@flash尝试添加$db->close();
和取消设置($db)
在脚本结束时,释放附加数据库文件上的操作系统文件锁,这可能是您的问题。如果您认为这是另一个问题的重复,则可以留下评论。仅指向另一个问题的答案添加的内容很少。
Error in fetch database is locked