如果SQLite3更新查询(已准备好)成功与否,有人知道如何检查PHP吗?
她的代码......
$stmt = $project->prepare( 'UPDATE tasks set title=:title WHERE rowid=:rowid' );
$stmt->bindValue(':title', rtrim($_POST['title'],'<br>'), SQLITE3_TEXT);
$stmt->bindValue(':rowid', (int)$_POST['rel'], SQLITE3_INTEGER);
$result = $stmt->execute();
var_dump( $result );
这段代码正在改变我的表格。但是“var_dump($ result)”每次返回一个空对象。即使我通过传递“rowid = non-existing-rowid”强制错误。
任何想法,我如何检查我的更新查询?
答案 0 :(得分:1)
UPDATE
语句会更新与WHERE
条件匹配的记录数;这可能是零,一个或多个记录。
在SQL级别上,所有这些都被认为是成功的。
如果要查找受影响的记录数,可以使用数据库连接对象的changes
method。
在你的情况下:
...
$result = $stmt->execute();
if ($result) {
echo 'Updated rows: ', $project->changes();
}