Sql Server如何使用date数据类型将日期插入到列中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql Server如何使用date数据类型将日期插入到列中相关的知识,希望对你有一定的参考价值。
我试图将生日日期插入Sql Server 2008 r2
db中的列日期我尝试传递它如下所示,但没有一个被解决
INSERT INTO t1 (birthday) VALUES (cast(08/12/2010 as date))
消息529,级别16,状态2,行1不允许从数据类型int到日期的显式转换。
INSERT INTO t1 (birthday) VALUES (20100812)
操作数类型冲突:int与日期不兼容
INSERT INTO t1 (birthday) VALUES (20100812)
INSERT INTO t1 (birthday) VALUES ('20100812')
将数据类型varchar转换为数字时出错。
INSERT INTO t1 (birthday) VALUES ('2010-08-12')
将数据类型varchar转换为数字时出错。
从您生成的编辑和错误消息,看起来birthday
列不是DATE
数据类型
纠正这一点,这将有效
INSERT INTO t1 (birthday) VALUES (cast(08/12/2010 as date))
要么
INSERT INTO t1 (birthday) VALUES ('20101210')
完整的回购 - 工作
CREATE TABLE t1 (Birthday DATE)
INSERT INTO dbo.T1 ( Birthday)
VALUES ('20181010')
INSERT INTO dbo.T1 ( Birthday)
VALUES (CAST('20181010' AS DATE) )
SELECT * FROM dbo.T1
Birthday
2018-10-10
2018-10-10
错误回购(1) - 在INT列中输入日期值
CREATE TABLE t1 (Birthday INT)
INSERT INTO dbo.T1 ( Birthday)
VALUES (CAST('20181010' AS DATE) )
消息206,级别16,状态2,行7操作数类型冲突:日期与int不兼容
错误回购(2) - 在NUMERIC列中输入日期值
CREATE TABLE t1 (Birthday NUMERIC)
INSERT INTO dbo.T1 ( Birthday)
VALUES (CAST('20181010' AS DATE) )
消息206,级别16,状态2,行7操作数类型冲突:日期与数字不兼容
错误回购(3) - 在DATE列中输入INT值
CREATE TABLE t1 (Birthday DATE)
INSERT INTO dbo.T1 ( Birthday)
VALUES (20181010)
消息206,级别16,状态2,行6操作数类型冲突:int与日期不兼容
差不多了。尝试
INSERT INTO t1 (birthday) VALUES ('2010-08-12')
在插入中,您提到了两列,即ID和NUMBER。
打赌你只提到了1个值:因此
INSERT INTO t1 (ID,NUM) VALUES (1, '20100812')
- 回答修改后的问题:
列NUMBER的数据类型是数字,您正在尝试插入qazxsw poi。
因此,请更正列NUM的数据类型或插入正确的列。
以上是关于Sql Server如何使用date数据类型将日期插入到列中的主要内容,如果未能解决你的问题,请参考以下文章
sql server 如何将日期时间字段修改成最接近该时间的整点时间?
SQL server 数据类型 - Date VS Varchar(n)