如何只在SQL Server 2008中存储日期和时间?

时间:2014-08-11 06:38:07

标签: sql sql-server

我需要使用SQL Server 2008仅在表中存储日期和时间。

示例我的尝试

create table dt( sl int, dateonly date, timeonly time);

insert into dt values(1,11-08-2014,'12:04:00'); 

错误

Operand type clash: int is incompatible with date

预期结果

sl   dateonly   timeonly
------------------------
1   11-08-2014  12:04:00

2 个答案:

答案 0 :(得分:2)

您错过了'

INSERT INTO dt VALUES (1,'11-08-2014','12:04:00'); 

答案 1 :(得分:2)

create table dt( sl int, dateonly date, timeonly time);

insert into dt values(1,'20140811','12:04:00'); 

这是你的日期字符串错误(它应该是字符串,但不是)

请避免使用dd-mm-yyyy或mm-dd-yyyy,在sql server中,所有格式中最安全的是YYYYMMDD(无分隔符)

顺便说一下,你可能会后悔没有将datetime作为一个字段。