【发布时间】:2012-04-06 08:42:31
【问题描述】:
我有 SQL Server 2008 R2,我的一张表有一个日期字段。当从我的 ASP.NET 页面插入时,通过将默认字段值设置为 getdate() 来自动插入日期。但是,这会以YYYY-MM-DD HH:MM:SS.0000000 格式添加日期。我真的只需要最多几秒钟的时间,而不是后面的零。
我该怎么做?
【问题讨论】:
标签: sql sql-server sql-server-2008 datetime
我有 SQL Server 2008 R2,我的一张表有一个日期字段。当从我的 ASP.NET 页面插入时,通过将默认字段值设置为 getdate() 来自动插入日期。但是,这会以YYYY-MM-DD HH:MM:SS.0000000 格式添加日期。我真的只需要最多几秒钟的时间,而不是后面的零。
我该怎么做?
【问题讨论】:
标签: sql sql-server sql-server-2008 datetime
DateTime,无论是在 SQL Server 还是 .NET 代码中没有格式。它有一个内部表示。
当你想显示DateTime的值时你格式化它使用格式字符串。
【讨论】:
select (convert(char(19), getdate(), 121))
给予:
2012-04-06 10:16:50
【讨论】:
在 SQL Server 2008 R2 之前,您所能做的就是使用可能支持的格式列表转换您返回的 datetime(存储为 8 个字节) - 请参阅 MSDN documentation on CAST and CONVERT 以获取完整列表支持的格式。
使用 SQL Server 2012,您将能够像在 .NET 中一样使用 FORMAT function - 但同样,这是 2012 版本中的新功能,在早期版本中不可用。
【讨论】: