非常感谢! 但是我要根据身份证号来刷新出生日期字段,对于15位的身份证号,用下面的语句运行还是报"文字与格式字符串不匹配"的错误,真搞不懂了!(写的是存储过程) update member set birthday= to_date('19'||substr(trim(rc.idcard),7,2)||substr(trim(rc.idcard),9,2)||substr(trim(rc.idcard),11,2),'yyyy-mm-dd')
查看你的rc.idcard字段,可能这个字段有错误数据。
update member set birthday= to_date('19'||substr(trim(rc.idcard),7,6),'yyyymmdd')
select to_date('19' || substr(('8203'), 1, 2) || substr(('7603'), 3, 2),
'yyyy-mm')
from dual
要转换成的格式是yyyy-mm-dd,根本就不匹配嘛
字符格式转换格式要一样的
如果换转换格式是yyyy-mm-dd
字符就应该是1982-03-01
但是我要根据身份证号来刷新出生日期字段,对于15位的身份证号,用下面的语句运行还是报"文字与格式字符串不匹配"的错误,真搞不懂了!(写的是存储过程)
update member
set birthday= to_date('19'||substr(trim(rc.idcard),7,2)||substr(trim(rc.idcard),9,2)||substr(trim(rc.idcard),11,2),'yyyy-mm-dd')
set birthday= to_date('19'||substr(trim(rc.idcard),7,6),'yyyymmdd')