當我嘗試運行此查詢時,出現上述錯誤。能有人幫我在這查找錯誤ORA-00932:不一致的數據類型:預期的DATE有NUMBER
UPDATE CCO.ORDER_CREATION
SET "Doc_Date" = 8/9/2013
WHERE "Document_Number" IN (3032310739,3032310740,3032310738)
當我嘗試運行此查詢時,出現上述錯誤。能有人幫我在這查找錯誤ORA-00932:不一致的數據類型:預期的DATE有NUMBER
UPDATE CCO.ORDER_CREATION
SET "Doc_Date" = 8/9/2013
WHERE "Document_Number" IN (3032310739,3032310740,3032310738)
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);
您可能需要調整格式面膜,因爲它目前還不清楚是否意味着月,第9個或9月8日
或者您可以使用一個ANSI日期文字(格式始終是YYYY-MM-DD的在ANSI SQL日期文字):
UPDATE CCO.ORDER_CREATION
SET "Doc_Date" = DATE '2013-09-08'
WHERE "Document_Number" IN (3032310739,3032310740,3032310738);
在你逝去的日期數字字符串目前,其轉換日期,然後嘗試插入如下
UPDATE CCO.ORDER_CREATION
SET "Doc_Date" = TO_DATE('8/9/2013','MM/DD/YYYY')
WHERE "Document_Number" IN (3032310739,3032310740,3032310738)
這是我看到這一點:
UPDATE CCO.ORDER_CREATION tbl1
SET tbl.Doc_Date = TO_DATE('08/09/2013', 'MM/DD/YYYY')
WHERE tbl1.Document_Number IN (3032310739,3032310740,3032310738)
不要有Oracle在手,但我想,'8/9/2013'只是'0.00044157' ;-) –
@ÁlvaroGonzálezOMG,我很尷尬現在 –