Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

ORA-01843:không phải là tháng hợp lệ

Trong các ràng buộc séc, bạn chỉ định TO_CHAR () với mặt nạ định dạng ngày là 'YYYY/MM/DD HH:MI:SS AM' . Nhưng các giá trị bạn chỉ định cho phạm vi có hai định dạng khác nhau, ví dụ:

'2005/01/01 00:00:01 AM' AND '12/31/2015 11:59:59 PM'

Tôi nghĩ rằng sẽ là một ý tưởng hay nếu bạn làm việc với ngày tháng, vì các chuỗi sẽ không so sánh theo cách bạn nghĩ.

Kiểm tra
constraint rental_rental_date check(rental_date) 
    between to_date('2005/01/01 00:00:01 AM', 'YYYY/MM/DD HH:MI:SS AM') and
            to_date('2015/12/31 11:59:59 PM', 'YYYY/MM/DD HH:MI:SS AM')

Tuy nhiên đây có thể không phải là gốc rễ của vấn đề của bạn. Đó có thể là một chuyển đổi trong quá trình tải của bạn, đó là lý do tại sao chúng tôi cần biết cách bạn đang tải dữ liệu.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 3 cách để định dạng một số thành 2 vị trí thập phân trong Oracle

  2. Oracle trích xuất số biến từ chuỗi

  3. Kích hoạt cập nhật lỗi clob

  4. java.sql.SQLException:Listener từ chối kết nối với lỗi sau:ORA-12519, TNS:không tìm thấy trình xử lý dịch vụ thích hợp

  5. Tạo chỉ mục trên bảng hiện có Oracle