如何仅将时间从DateTime存储到SQL Server 2005中?

问题描述:

DateTime只存储时间到SQL Server 2005中我使用vs.net 2010和SQL Server 2005如何仅将时间从DateTime存储到SQL Server 2005中?

像这样

MyCurrent DataType 
id   int 
EnterDate DateTime 
Date  string 
Time  string 

// I want to like this STORE [Future out put] 
id .... EnterDate    Date   Time 
1 .... 4/11/2011 10:25:00 4/11/2011  10:25:00 
2 .... 4/11/2011 10:32:10 4/11/2011  10:32:10 
3 .... 4/11/2011 10:41:37 4/11/2011  10:41:37 

因此,如何只存储时间价值,以及如何定义SQL数据类型服务器?

+1

有基于Web很多tuttorial你为什么不检查和努力呢? –

+0

SQL Server 2005确实不**具有“仅限时间”数据类型 - 您需要升级到SQL Server ** 2008 **,它为此目的引入了“TIME”数据类型 –

+0

这不是一个好主意完全是因为它违反了数据库正常化规则。我想你可以将它们存储在一起并在选择期间执行分离。 –

你只能得到一次这样

Select CONVERT(VARCHAR(8),GETDATE(),108) AS HourMinuteSecond 

参考Sql server DateTime更多

我猜你想有三列,一个与日期时间戳,一个日期和一个只用一次。如果多数民众赞成的话,那么

SELECT DATEPART(dd/mm/yyyy,EnterDate) AS Date 
from table 

这将让你所有的日期时间标记的日期,你可以容纳这在你的插入查询

SELECT DATEPART(hh:mm:ss,EnterDate) AS Time 
from table 
+5

正如一个友好的建议,如果你使用“你”和“你的”而不是“你”和“你”,你的答案会更容易阅读(而且看起来更专业一般)。 –

+0

@JonSkeet同意了,一定会记住这一点...... – Zohaib