我正在从访问数据库移动到SQL Server数据库,并想知道我是否可以为日期创建自己的数据类型。创建具有特定格式的自定义数据类型
我希望我的自定义日期类型的格式为mm/dd/yyyy
而不是yyyy/mm/dd
。这可能吗?
我正在从访问数据库移动到SQL Server数据库,并想知道我是否可以为日期创建自己的数据类型。创建具有特定格式的自定义数据类型
我希望我的自定义日期类型的格式为mm/dd/yyyy
而不是yyyy/mm/dd
。这可能吗?
使用默认/内置数据类型来存储特定的数据类型。这将更加高效和可靠,因为sql server将只允许存储有效数据(数据完整性)。
此外,您还可以使用所有内置函数来处理该特定数据类型。在你的情况下,如果你使用Sql Server的日期时间数据类型,你将能够使用所有的日期时间函数(DATEDIFF()
,DATEADD()
,DAY()
,YEAR()
,MONTH()
,DATENAME()
等)。
就您如何看到数据库中存储的日期/日期时间值而言,您将始终拥有内置的数据时间函数,以根据您的需要对日期值进行格式设置。
一旦存储在SQL Server数据库中的日期/时间日期值而您要查看的日期值作为mm/dd/yyyy
代替yyyy/mm/dd
只需做到以下几点:
SELECT CONVERT(VARCHAR(10), [DateColumn], 101)
自定义数据类型在那里可以使用,但有是一些非常奇怪的问题与他们,避免他们只要你可以:)
内部日期保存总是相同的。但是你可以在选择日期时更改日期的表示形式 –
那么,如果我以mm/dd/yyyy格式输入数据呢?它会自动将其转换为日期数据类型格式吗? – Diogenes
从客户端应用程序。 (例如:C#,VB.NET)我会将这些值作为DateTime参数而不是字符串发送到SQL Server。 –