2008-10-16 137 views
2

默认情况下,SQL Server附带设置为“英语(美国)”的语言特点,日期格式设置为MM/DD/YY代替的日期格式我在想,这是澳大利亚和具有日期格式如DD/MM/YY。一个SQL Server的设置区域2005

服务器管理工​​作室/配置工具中是否有一个选项,可以设置SQL Server的区域设置,这将防止DateTime字段被格式化为美国日期格式?

如果没有,我怎么可以把它当我使用一个SQL查询,如(原谅我,如果有不正确的语法,我做起来当场):

Dim dc As New SqlCommand("INSERT INTO hello VALUES (@Date)", cn) 
dc.Parameters.Add(New SqlParameter("Date", System.DateTime.Now)) 

提前感谢。 :)

回答

2

您可以设置从SQL Management Studio中每个用户的默认语言/区域设置(看安全文件夹下)。

并使用SET LANGUAGE命令覆盖此特定连接(或SET DATEFORMAT,如果您只是想更改日期格式)。

您还可以在SQL Management Studio中设置默认语言(用于新用户):右键单击服务器,选择属性/高级/默认语言。

0

不知道是什么格式 “菜单下”

DD/MM/YYYY HH:MM:SS?

如果是,该日期是英国/法国的注释,因此,所有你需要做的是:

INSERT INTO hello VALUES convert(datetime, @Date + ' 00:00:00', 103) 

INSERT INTO hello VALUES convert(datetime, @Date, 103) 

,如果你确实放置的时间

更多信息,check Books online on MSDN以获得正确的码数。

即使在选择我总是用这一点,无论什么在SQL(因为我倾向于使用托管SQL和有我不能改变格式),如:

SELECT myColumn FROM myTable WHERE myDateField >= convert(datetime, @Date + '00:00:00', 103) 

希望它有助于