Sql server 将SQL Server数据库(而不是整个服务器)上的dateformat更改为dd/mm/yyyy

Sql server 将SQL Server数据库(而不是整个服务器)上的dateformat更改为dd/mm/yyyy,sql-server,datetime,date,format,Sql Server,Datetime,Date,Format,有人能帮忙吗,我们安装了一个SQLServer2005数据库(实际上它是一个连接到SQLServer2005服务器的SQLServer2000)使用默认的服务器语言USA和日期格式,如mm/dd/yy,我们确实需要保持这种方式,但目前刚刚将一个新数据库上载到服务器,这需要具有dd/mm/yyyy的日期格式 我可以只对数据库而不是整个服务器强制更改吗?如果我在整个服务器上强制更改,它将使我的所有其他应用程序失败 例如,目前我们有一个失败的sql语句 从“最终访问”所在的目录中选择*{user pr

有人能帮忙吗,我们安装了一个SQLServer2005数据库(实际上它是一个连接到SQLServer2005服务器的SQLServer2000)使用默认的服务器语言USA和日期格式,如mm/dd/yy,我们确实需要保持这种方式,但目前刚刚将一个新数据库上载到服务器,这需要具有dd/mm/yyyy的日期格式

我可以只对数据库而不是整个服务器强制更改吗?如果我在整个服务器上强制更改,它将使我的所有其他应用程序失败

例如,目前我们有一个失败的sql语句

从“最终访问”所在的目录中选择*<'16/04/2009 13:36:17'

当然,我们可以加上这个,现在可以了

从ultimo_acceso 但问题是应用程序中有大量sql语句。事实上,这个应用程序已经相当旧了,我们真的不想对源代码做任何更改

因此,如果我们可以强制对数据库/特定数据库的表进行更改,那么这就足够了

非常感谢您的帮助

设置日期格式dmy;
SET dateformat dmy;
SELECT * FROM sesiones WHERE ultimo_acceso < '16/04/2009 13:36:17';
选择*从目录中,其中ultimo_acceso<'16/04/2009 13:36:17';
您可以通过在SQL Management Studio>安全性>登录>{user properties}>默认语言中选择该用户的默认语言来更改每个用户的默认日期格式

您可以使用查看每种语言的日期格式

EXEC sp_helplanguage

我想你是糊涂了。sql server中的日期时间根本不存储为字符串。它们存储为8字节的二进制值,仅在向用户显示时才转换为字符串。您正在使用日期时间列来保存日期,对吗?

在SQL Server中处理日期时间字符串时,我将始终使用ISO-8601日期格式

YYYY-MM-DDTHH:MM:SS 
无论您使用何种语言或区域设置,这都应该有效

请尝试选择以下选项:

SELECT * FROM sesiones WHERE ultimo_acceso < '2009-04-16T13:36:17'
从最后访问的位置选择*<'2009-04-16T13:36:17'

马克

现在我真的想知道这是否是马克所要求的:)如果这被接受,你将得到我的选票…+1。约会总是令人痛苦的。我个人认为全世界都应该使用YYYYMMDD@Ian,除了19700102是不明确的-是的。。更改了用户的默认语言+1谢谢!我想知道为什么在我的查询结果中切换了月份和日期。为什么要做一些技术性的事情,比如查询本地化?没有关系。。。非常感谢。