ISDATE函数对于1753年先头的日期都返回0

ISDATE函数对于1753年之前的日期都返回0今天看到一个帖子,将1753年之前的一个日期用ISDATE函数会返回0,自

ISDATE函数对于1753年之前的日期都返回0

今天看到一个帖子,将1753年之前的一个日期用ISDATE函数会返回0,自己也做了多个测试,发现确实如此:

 

declare @date asdate

 

set @date =convert(date,'17000101')

 

print @date  --可以转化为Date类型

 

print ISDATE('17000101')

 

结果确实返回0:

 

1700-01-01
0


 

后来看到有人提到可能跟SQL Server日期的存储范围,查了一下MSDN发现:

 

ISDATE 的返回值取决于 SET DATEFORMAT、SET LANGUAGE 和配置默认语言服务器配置选项设定的设置。参考下文:http://msdn.microsoft.com/zh-cn/library/ms187347.aspx

 

 

 

 

1楼SmithLiu328昨天 23:29
自己做沙发