查找错误ORA-00932:不一致的数据类型:预期DATE得到NUMBER

san*_*sha 6 sql oracle

当我尝试运行此查询时,我得到上述错误.有人可以帮我这个

UPDATE CCO.ORDER_CREATION 
   SET "Doc_Date" = 8/9/2013 
 WHERE "Document_Number" IN (3032310739,3032310740,3032310738)
Run Code Online (Sandbox Code Playgroud)

a_h*_*ame 7

8/9/2013 是一个数值:8除以9除以2013.

您应该使用该to_date()函数将字符串转换为日期:

UPDATE CCO.ORDER_CREATION 
   SET "Doc_Date" = to_date('08/09/2013', 'dd/mm/yyyy')
 WHERE "Document_Number" IN (3032310739,3032310740,3032310738);
Run Code Online (Sandbox Code Playgroud)

您可能需要调整格式掩码,因为不清楚您是指8月,9日还是9月8日

或者,您可以使用ANSI日期文字(对于ANSI SQL日期文字,格式始终为yyyy-mm-dd):

UPDATE CCO.ORDER_CREATION 
   SET "Doc_Date" = DATE '2013-09-08'
 WHERE "Document_Number" IN (3032310739,3032310740,3032310738);
Run Code Online (Sandbox Code Playgroud)


Rah*_*thi 6

尝试这个

UPDATE CCO.ORDER_CREATION 
   SET "Doc_Date" =   TO_DATE('8/9/2013', 'MM/DD/YYYY')
 WHERE "Document_Number" IN (3032310739,3032310740,3032310738)
Run Code Online (Sandbox Code Playgroud)

还要检查