我正在努力解决 MS SQL 2005 Express 问题。当 Windows 区域选项(控制面板)设置为英语(美国)时,如下所示的查询非常有效,但设置为意大利语(可能还有其他语言)时会失败。
UPDATE MyTable SET StartDate='2009-07-14 12:05:30' WHERE ID=7
我还尝试了许多不同的日期时间格式,例如 ISO 8601:
yyyy-MM-ddTHH:mm:ss
(另见: http: //karaszi.com/the-ultimate-guide-to-the-datetime-datatypes)
除了 yyyyMMdd 之外,这些格式都不起作用,但随后我失去了不可接受的时间。
同样先执行此查询也没有区别:
SET LANGUAGE us_english
PS:我从 .Net 程序执行查询,但 SQL Server Management Studio 给出了相同的结果:它无法将字符串转换为数据时间。一旦设置更改回美国英语,它就会再次工作。
如何使此查询与其他语言设置一起使用?