0

我有一个包含 startDate 和 endDate 的数据库。我正在尝试运行这个简单的脚本来查找和替换某些日期。这是我的脚本:

SET startDate = '2012-10-11 07:00'
AND
endDate = '2012-10-13 20:00'

where startDate = '2012-10-12 07:00'
AND
endDate = '2012-10-14 20:00'

我运行它并收到此错误:

Incorrect syntax near '='.: SET startDate => '2012-10-11 07:00' AND endDate = '2012-10-13 20:00' where startDate = '2012-10-12 07:00' AND endDate = '2012-10-14 20:00'

我真的不知道为什么它不能正常运行,但希望你们中的一个聪明的身体能够指出我难以置信的愚蠢错误!

这里有希望!=0)

4

1 回答 1

1

您需要用逗号分隔列以更新,而不是AND

UPDATE  YourTable
SET     startDate = '2012-10-11 07:00',
        endDate = '2012-10-13 20:00' 
WHERE   startDate = '2012-10-12 07:00' 
AND     endDate = '2012-10-14 20:00'

您还应该使用不区分文化的日期格式,例如“yyyyMMdd hh:mm:ss”,例如,您的 date2012-10-11 07:00将被某些文化解释为 10 月 11 日,而其他文化将被解释为 11 月 10 日。

为什么不使用 yyyy-mm-dd 日期的 SQL Fiddle 示例

于 2013-05-09T16:47:41.053 回答