A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

用SQL语句插入Datetime类型时出现错误,
创建的表:
use T_Employee
    go                         //在 T_Employee数据库中创建表
create table T_celler (id int not null,Fcellnumber varchar(10)null,Fstarttime Datetime null,Flasttime Datetime null)
    use T_Employee

用下面语句插入数据时 最后在表里面的得出的时间不是插入的  例如:
insert into T_celler (Fcellnumber,Fstarttime,Flasttime,Ftelnumber)values('001',2012-4-11-9-12-00-000,2012-4-11-9-25-18,'066666660')
在表中是:
插入的是2012-4-11-9-12-00-000,2012-4-11-9-25-18  表中得到的是1905-05-31 00:00:00.000   1905-04-30 00:00:00.000  要怎么做是正确的那

评分

参与人数 1技术分 +2 收起 理由
宋天琪 + 2

查看全部评分

5 个回复

正序浏览
时间戳要以字符串形式插入

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
将字段的数据类型改为datetime2的

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
   insert into T_celler (id,Fcellnumber,Fstarttime,Flasttime,Ftelnumber)values(1,'001','2013-4-11 00:00:00.000','2012-4-11 00:00:00.000','066666660')  这样插入的就是正确的了,你插入的不是datatime格式,所以会出现错误,像‘1905-05-31 00:00:00.000’、或‘1905-05-31‘的字符串格式就可以成功了

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
你这个插入的语句跟你建的表里的字段都没对应上啊?

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
不清楚,不过貌似datetime类型插入时,要用单引号包起来的

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马