一、引言
遇到错误为:
写sql语句插入数据库不可避免的会插入时间字段,当在给oracle设置时间字段为date时,经常会出现格式问题。
二、问题
最开始插入sql语句为
- <span style="font-family:'Microsoft YaHei';"><span style="font-size:18px;">INSERT INTO T_USER (F_ID,F_NAME,F_PW,F_ROLE,F_TEL,F_TIME,F_PERMISSION) VALUES ('123d','asdf','123',1,'13821541254','2017-02-08 16:39:23','1,1,1,1,0');</span></span>
遇到错误为:
[Err] ORA-01861: 文字与格式字符串不匹配
三、解决方法
后来找到原因是因为插入的时间字段要通过oracle自带的to_date按照规定的格式转换一下,其实比较简单,已经挂了两次了,特地写了篇博记住==老了记忆力不行了啊==
下面是修改后的sql
- <span style="font-family:'Microsoft YaHei';"><span style="font-size:18px;">INSERT INTO T_USER (F_ID,F_NAME,F_PW,F_ROLE,F_TEL,F_TIME,F_PERMISSION) VALUES ('123d','asdf','123',1,'13825412541',TO_DATE('2017/02/01', 'YYYY-MM-DD HH24:MI:SS'),'1,1,1,1,0');</span></span>