SQLServer中时间数据查询需要注意的一个小问题

发表于:2007-05-25来源:作者:点击数: 标签:
由于本人的工作环境,接触到基于不同语言下的SQL Server,遇到不少麻烦, 其中DateTime数据类最多,中文,韩文等数据库中时间的默认格式为:MM/DD/YY 或 YY/MM/DD 但英文中又分为:MM/DD/YY 或 DD/MM/YY 这样问题就来啦 例如: 我的一个韩国客户,操作系统:

由于本人的工作环境,接触到基于不同语言下的SQL Server,遇到不少麻烦,
其中DateTime数据类最多,中文,韩文等数据库中时间的默认格式为:MM/DD/YY 或 YY/MM/DD
但英文中又分为:MM/DD/YY 或 DD/MM/YY

这样问题就来啦
例如:

我的一个韩国客户,操作系统:windows 2000 server 英文版,MS SQL Server 韩文版
他的主机在新西兰,
时间系统默认为新西兰 DD/MM/YY
数据库时间默认为:  MM/DD/YY
当数据库更新时间,或执行时间查询命令时 例如

Select update_time
from order_details
where update_time > convert(datetime, 'vardateinput',121)
vardateinput= 16/11/2004

在实践默认为 DD/MM/YY 的主机或客户端上时间为十一月十六日
但数据库时间默认为:  MM/DD/YY
错误立即产生
如何更正很简单,这里我就不多说了,只是在国际化的今天,希望我们中国的“高手“们
能注意这些“国际化“的要求
尽量避免一些“低级“的错误,把时间用在写更多,更新的创意程序上

有时简单问题可以困扰我们几天的宝贵时间,仅此于各位共勉,欢迎大家一起交流!


原文转自:http://www.ltesting.net