gpt4 book ai didi

php - 尝试更新空行时没有抛出 mySQL 错误

转载 作者:行者123 更新时间:2023-11-29 23:35:09 24 4
gpt4 key购买 nike

构建一个小项目并尝试边学习边进行。

如果表命名错误等,我会得到错误代码,但如果我尝试更新空行,我不会得到错误。我想要,但它并没有告诉我我搞砸了。这正常吗?

public function updateMessage($id){  //done
try{
global $pdo;
$temp=$this->_message;
$sql = "UPDATE message SET content=:val WHERE id=$id";
$s = $pdo->prepare($sql);
$s->bindValue(':val',$temp);
$s->execute();
}
catch (PDOException $e)
{ $loc = $_SERVER['PHP_SELF'];
$output = "Unable to connect to the database server: $loc <br><h3>Please contact
Steve via text on ###### quoting:</h3><h5>" . $e->getMessage() . "<br>
Found at $loc.</h5>
<h3>Thanks. </h3>". "<br>"."<br>" ;
include $_SERVER['DOCUMENT_ROOT'] ."/beta01/includes/output.html.php";
exit();
}
}

正如我所说,它按预期工作,大多数错误只是不在空更新问题上。

最佳答案

$sql = "UPDATE message SET content=:val  WHERE id=$id";

如果它是一个“空行”(假设我理解正确),那么它不满足条件WHERE id=$id,所以它起作用了 - 它更新了消息的内容具有该 id 的每一行(没有)。

听起来您想知道是否没有行受到查询的影响,在这种情况下您可以这样做:

$s->execute();
if ($s->rowCount() < 1) {
//throw an exception, show a warning, whatever you want to do
}

关于php - 尝试更新空行时没有抛出 mySQL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26415469/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com