2013-06-13 153 views
0

我的更新语句dos似乎没有更新我的数据库,但我不确定为什么,我在脚本的其他地方使用了相同的代码,它工作正常。PDO更新没有更新数据库

​​

我已经试过手动输入查询到数据库使用phpMyAdmin只是为了测试我有我的表名正确且查询并正常工作。

UPDATE docs SET ref = 'FMS', 
rev = 'D', 
updated = NOW() WHERE id =73 

所以这让我想我在我的PDO声明中有一个错误。尽管try catch块没有提供任何错误。

+0

引发的错误,你试过打印出在你的PHP代码中的查询? – ajtrichards

+0

如果你为'updated'绑定了字符串“NOW()”,那么你可能会遇到问题,而不是它,把一个PHP日期时间格式 –

+0

@RoyalBg我通过日期像date_default_timezone_set('UTC'); $ date = date(“Y-m-d”); 然后使用$ date变量传入PDO语句 – twigg

回答

2

有所有可能的原因

  • 存在在查询错误(其必须被抛出)
  • 没有数据相匹配的条件。
  • 数据已经更新 - 无法更改。
  • 您正在检查您正在更新的表/数据库。

请验证列出的所有问题。

顺便说一句,要能看到你有configure PHP properly

+0

你好,感谢您的帮助,我会现在看看这个,即时连接到我的数据库是这样的: 尝试{0} {conn =新的PDO(“mysql:host = $ dbhost; dbname = $ dbname”,$ dbuser,$ dbpass); $ conn-> setAttribute(PDO :: ATTR_ERRMODE,PDO :: ERRMODE_EXCEPTION); } catch(PDOException $ e){ echo $ e-> getMessage(); } 这是否足以在我的上述代码中正确地抛出错误? – twigg