【问题标题】:Not receiving any errors on PDO MySQL Update Query but query does not work在 PDO MySQL 更新查询上未收到任何错误,但查询不起作用
【发布时间】:2014-10-14 19:04:26
【问题描述】:

当我运行这个查询时,它运行良好,没有错误。除了,它没有更新查询。

我已检查以确保$createdForm_id 存在于我的表的行中,$document_id 中有值,$time_saved 中有值。

谁能帮我看看我在这里做错了什么?

//new database
 $opt = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION);
 try { $dbh_forms = new PDO("mysql:host=localhost;dbname=website_data", "root", "123", $opt); }
 catch(PDOException $e) { echo $e->getMessage(); }

$update_data = $dbh_forms->prepare("UPDATE form_data SET document_id = :document_id AND time_saved = :time_saved WHERE id = :id");
$update_data->execute(array(':document_id' => $document_id, ':time_saved' => $time, ':id' => $createdForm_id));

【问题讨论】:

  • SET field=value, field=value 没有 AND。是的,您的查询运行良好.. 但它不会更新任何内容(使用 PDO 或其他方式时)
  • 工作完美,感谢@MikeB!

标签: php mysql sql pdo


【解决方案1】:

您的查询中有一个不属于那里的“和”。改变这个:

$update_data = $dbh_forms->prepare("UPDATE form_data SET document_id = :document_id AND time_saved = :time_saved WHERE id = :id");

为此,删除 and 并添加逗号: $update_data = $dbh_forms->prepare("UPDATE form_data SET document_id = :document_id, time_saved = :time_saved WHERE id = :id");

【讨论】:

  • 嗯。为什么有人会否决 100% 正确的答案?
猜你喜欢
  • 2013-10-04
  • 2015-04-26
  • 2014-01-31
  • 1970-01-01
  • 2014-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-18
相关资源
最近更新 更多