Oracle数据库中插入Date格式的数据,采用INSERT INTO TAB_NAME(DATE_COL) VALUES(TO_DATE('2008-01-18','YYYY-MM-DD')); 可以成功插入。但是我想采用一个变量的形式存储日期,如string date=2008-01-18;是否可以吧语句变成:
INSERT INTO TAB_NAME(DATE_COL) VALUES(TO_DATE(date,'YYYY-MM-DD'));。我试了下不可行,大神们提提意见哈!!!谢谢

解决方案 »

  1.   

    declare
       adate varchar(20) :='2008-01-18';
    begin
    INSERT INTO a(DATE_COL) VALUES(TO_DATE(adate,'YYYY-MM-DD'));   
    commit;                 
    end;      
      

  2.   

    这个可以写个函数或者存储过程来实现的,一般的sql没有这个功能的
      

  3.   

    有的,我已经实现了,方法是:INSERT INTO TAB_NAME(DATE_COL) VALUES(TO_DATE(‘“+date+”’,'YYYY-MM-DD'));
    主要是格式问题