已执行MSSQL查询但未在表中更新

时间:2015-03-03 12:05:09

标签: sql-server sql-server-2008 mssql-jdbc

我同时使用MYSQL和MSSQL,我在MYSQL中尝试了它的工作,但是MSSQL查询也被执行但是0行受影响并且在表中检查尚未更新。

MYSQL QUERY:

UPDATE aqi_metrics 
SET stability=:stability ,risk=:risk,days=DATE(NOW( )) 
WHERE project=:project AND days=DATE(NOW( ))

MSSQL QUERY:

UPDATE aqi_metrics 
SET stability=31 ,risk=8,days=GETDATE() 
WHERE project='JupiterQA' AND days=GETDATE()

MSSQL查询中的错误是什么?

1 个答案:

答案 0 :(得分:0)

GETDATE()返回一个日期时间 - 所以它也会有时间。您需要将两者都转换为日期数据类型以仅比较日期。例如。

UPDATE aqi_metrics 
SET stability=31 ,risk=8,days=GETDATE() 
WHERE project='JupiterQA' AND CONVERT(date, days) = CONVERT(date, getdate())