首頁 >資料庫 >mysql教程 >如何解決 SQL 中的 ORA-01861:「文字與格式字串不符」錯誤?

如何解決 SQL 中的 ORA-01861:「文字與格式字串不符」錯誤?

Susan Sarandon
Susan Sarandon原創
2024-12-28 13:18:10526瀏覽

How to Resolve the ORA-01861:

ORA-01861:解決SQL 中的「文字與格式字串不符」錯誤

嘗試將資料插入資料庫時,使用者可能會遇到ORA-01861 錯誤,指出「文字與格式字串不符」。當 SQL 語句中使用的文字格式與格式字串中定義的預期格式不一致時,會發生此錯誤。

在提供的範例中,由於使用字串文字而引發錯誤對於 DOB 欄位。此錯誤訊息表示文字「1989-12-09」不符合預期的日期格式。要解決此問題,字串文字應替換為將日期值轉換為可識別的日期格式的表達式。

建議的解決方案是使用 TO_DATE() 函數將字串文字轉換為適當的日期格式日期格式。在這種情況下,表達式將為:

TO_DATE('1989-12-09','YYYY-MM-DD')

透過使用此表達式,日期值將轉換為「YYYY-MM-DD」格式,該格式與 DOB 期望的格式相容於柱子。此修正後的語句應該可以成功執行,而不會遇到ORA-01861 錯誤:

INSERT INTO Patient  
(
  PatientNo,
  PatientFirstName,
  PatientLastName,
  PatientStreetAddress,
  PatientTown,
  PatientCounty,
  PatientPostcode,
  DOB,
  Gender,
  PatientHomeTelephoneNumber,
  PatientMobileTelephoneNumber
)
VALUES 
(
  121, 
  'Miles', 
  'Malone', 
  '64 Zoo Lane', 
  'Clapham', 
  'United Kingdom',
  'SW4 9LP',
  TO_DATE('1989-12-09','YYYY-MM-DD'),
  'M',
  02086950291,
  07498635200
);

透過遵守正確的格式規範,開發人員可以防止ORA-01861 錯誤並確保SQL 語句成功執行。

以上是如何解決 SQL 中的 ORA-01861:「文字與格式字串不符」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn