怎么插入datetime 一条数据 sqlserver

[复制链接]
查看11 | 回复2 | 2011-6-26 04:10:54 | 显示全部楼层 |阅读模式
回复

使用道具 举报

千问 | 2011-6-26 04:10:54 | 显示全部楼层
可以使用CONVERT函数,将字符串类型的数据,转换为datetime类型。
CONVERT(DATETIME,\'2012-01-0209:06:18\',120)

其中那个120的参数,取决于你前面的字符串信息是什么格式的。

执行下面的语句,就可以一一对应得上。

SELECT0ASID,Convert(VARCHAR(30),GETDATE(),0)ASresultUNIONALL
SELECT100ASID,Convert(VARCHAR(30),GETDATE(),100)ASresultUNIONALL
SELECT1ASID,Convert(VARCHAR(30),GETDATE(),1)ASresultUNIONALL
SELECT101ASID,Convert(VARCHAR(30),GETDATE(),101)ASresultUNIONALL
SELECT2ASID,Convert(VARCHAR(30),GETDATE(),2)ASresultUNIONALL
SELECT102ASID,Convert(VARCHAR(30),GETDATE(),102)ASresultUNIONALL
SELECT2ASID,Convert(VARCHAR(30),GETDATE(),2)ASresultUNIONALL
SELECT102ASID,Convert(VARCHAR(30),GETDATE(),102)ASresultUNIONALL
SELECT3ASID,Convert(VARCHAR(30),GETDATE(),3)ASresultUNIONALL
SELECT103ASID,Convert(VARCHAR(30),GETDATE(),103)ASresultUNIONALL
SELECT4ASID,Convert(VARCHAR(30),GETDATE(),4)ASresultUNIONALL
SELECT104ASID,Convert(VARCHAR(30),GETDATE(),104)ASresultUNIONALL
SELECT5ASID,Convert(VARCHAR(30),GETDATE(),5)ASresultUNIONALL
SELECT105ASID,Convert(VARCHAR(30),GETDATE(),105)ASresultUNIONALL
SELECT6ASID,Convert(VARCHAR(30),GETDATE(),6)ASresultUNIONALL
SELECT106ASID,Convert(VARCHAR(30),GETDATE(),106)ASresultUNIONALL
SELECT7ASID,Convert(VARCHAR(30),GETDATE(),7)ASresultUNIONALL
SELECT107ASID,Convert(VARCHAR(30),GETDATE(),107)ASresultUNIONALL
SELECT8ASID,Convert(VARCHAR(30),GETDATE(),8)ASresultUNIONALL
SELECT108ASID,Convert(VARCHAR(30),GETDATE(),108)ASresultUNIONALL
SELECT9ASID,Convert(VARCHAR(30),GETDATE(),9)ASresultUNIONALL
SELECT109ASID,Convert(VARCHAR(30),GETDATE(),109)ASresultUNIONALL
SELECT10ASID,Convert(VARCHAR(30),GETDATE(),10)ASresultUNIONALL
SELECT110ASID,Convert(VARCHAR(30),GETDATE(),110)ASresultUNIONALL
SELECT11ASID,Convert(VARCHAR(30),GETDATE(),11)ASresultUNIONALL
SELECT111ASID,Convert(VARCHAR(30),GETDATE(),111)ASresultUNIONALL
SELECT12ASID,Convert(VARCHAR(30),GETDATE(),12)ASresultUNIONALL
SELECT112ASID,Convert(VARCHAR(30),GETDATE(),112)ASresultUNIONALL
SELECT13ASID,Convert(VARCHAR(30),GETDATE(),13)ASresultUNIONALL
SELECT113ASID,Convert(VARCHAR(30),GETDATE(),113)ASresultUNIONALL
SELECT14ASID,Convert(VARCHAR(30),GETDATE(),14)ASresultUNIONALL
SELECT114ASID,Convert(VARCHAR(30),GETDATE(),114)ASresultUNIONALL
SELECT20ASID,Convert(VARCHAR(30),GETDATE(),20)ASresultUNIONALL
SELECT120ASID,Convert(VARCHAR(30),GETDATE(),120)ASresultUNIONALL
SELECT21ASID,Convert(VARCHAR(30),GETDATE(),21)ASresultUNIONALL
SELECT121ASID,Convert(VARCHAR(30),GETDATE(),121)ASresult









<h4class=\"ask\">追问


120???
回复

使用道具 举报

千问 | 2011-6-26 04:10:54 | 显示全部楼层
120的意思就是,你的字符串的格式,必须是\'2012-01-0209:06:18\'这个样子的。
也就是年年年年-月月-日日时时:分分:秒秒这样的格式。

你要是
SELECTCONVERT(DATETIME,\'01/02/12\',120)
那么结果就是
-----------------------
消息241,级别16,状态1,第1行
从字符串向datetime转换时失败。


但是你指定了正确的参数
SELECTCONVERT(DATETIME,\'01/02/12\',1)
-----------------------
2012-01-0200:00:00.000
(1行受影响)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行