【发布时间】:2014-12-02 07:02:53
【问题描述】:
我想用两种方式插入日期和时间,如下所示:
表:英尺
create table ft
(
columndate datetime,
columntime datetime
)
记录插入:格式1
insert into ft values('2014-12-25', '01:55:56');
记录插入:格式2
insert into ft values('25-12-2014', '01:45:54');
注意:是的!当然,我只想为columndate 的第一列插入日期,为columntime 的第二列插入时间,我想为此使用datetime 数据类型。对于这两种插入格式,我都会遇到相同的错误,如下所示:
错误:
将 varchar 数据类型转换为 datetime 数据类型导致值超出范围。
【问题讨论】:
-
什么是 25 小时可能会出现错误
-
对不起!那是错字。我很抱歉。
-
在第一个查询中,您以
YYYY-MMM-DD格式输入日期,但在第二个插入中,您将插入提供为DD-MM-YYYY,这会给您带来错误 -
如果您只想存储时间,为什么还要使用
DATETIME?使用最合适的数据类型 -TIME(n)!! -
你应该使用你正在使用的任何运行时的参数,这样更容易处理。
标签: sql-server datetime sql-server-2008-r2