本帖最后由 l245382052 于 2011-12-21 15:43:45 编辑

解决方案 »

  1.   


    update tableType 
    set holiday_end = to_date('2011-12-21','yyyy-MM-dd')
    where worker_id='10589'  
    and HOLIDAY_TYPE='旷 工'  
    and holiday_state='0' 
      

  2.   

    holiday_end 是什么类型  如果是yyyy-MM-dd时间类型  在通过to_date函数就会报错了--如果是date类型
    update tableType 
    set holiday_end = to_date('2011-12-21','yyyy-MM-dd')
    where worker_id='10589'  
    and HOLIDAY_TYPE='旷 工'  
    and holiday_state='0' 
    --如果是字符串类型
    update tableType 
    set to_date(holiday_end,'yyyy-MM-dd') = to_date('2011-12-21','yyyy-MM-dd')
    where worker_id='10589'  
    and HOLIDAY_TYPE='旷 工'  
    and holiday_state='0'
      

  3.   

    LZ这么写的话 应该是to_char('2011-12-21','yyyy-MM-dd')这个报错了  to_char函数不能将非时间类型字符串转换成yyyy-MM-dd格式   会报错'无效数字'
      

  4.   


    --如果是varchar2,这样写吧,不过应该是date吧,用varchar2很奇怪
    update tableType 
    set holiday_end,'yyyy-MM-dd' = '2011-12-21'
    where worker_id='10589'  
    and HOLIDAY_TYPE='旷 工'  
    and holiday_state='0'