想把birth列由varchar2转换为date类型,我是按如下步骤做的:
步骤如下: 
1.假设前一个字段为a_time,增加一个字段a_tim 
2.update aaa set a_tim =to_date(a_time,'yyyy-mm-dd hh24:mi:ss'); 
3.删除a_time后,建一个字段为a_time,定义字段类型为date 
4.update aaa set a_time = a_tim 但是我操作了提示错误:ORA-01840: 输入值对于日期格式不够长我的这个列的值是这样的如:1900/01/01请问如何转换

解决方案 »

  1.   

    我把'yyyy-mm-dd hh24:mi:ss'
    改为'yyyy-mm-dd '
    也不可以
      

  2.   


    TO_DATE(TO_CHAR(a_time,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') 吧,一定行,记得接分哦。。
      

  3.   

    我晕,发不上来图,错误提示说:无效数字
    错误定位在a_time 一列
      

  4.   

    你a_time列估计有数据不对,我按你的操作步骤更改完全没有错误
      

  5.   

    恩,是数据有问题,有1980/02/31 或者 1980/'02/01 或者1980/yy/dd 等等不规则的数值