SQL数据转换失败DateTime

时间:2016-08-19 03:01:15

标签: sql sql-server sql-server-2008 datetime

我有一个更新查询,如下所示

UPDATE EcommerceCustomerActiveSites SET SubscriptionExpDate = '19/08/2021 12:15:17 PM', IsEnabled = 1 WHERE ContactCode = 'CCTC-002833'

这给我一个错误如下

The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.

然而。当我从同一个表中执行select查询并从SubscriptionExpDate列复制样本值时,它返回与insert语句相同的格式!

19/08/2021 12:27:06 PM  -- Value From Select
19/08/2021 12:15:17 PM  -- Value From Insert

有没有人有任何线索?

1 个答案:

答案 0 :(得分:0)

只需为常量字符串使用更合适的值:

UPDATE EcommerceCustomerActiveSites 
  SET SubscriptionExpDate = '2012-08-19 12:15:17',
      IsEnabled = 1 
  WHERE ContactCode = 'CCTC-002833';

documentation中描述了datetime常量的格式。