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

cột không null có thể hoãn lại

Có hai lựa chọn ở đây. Bạn cần đặt ràng buộc để được hoãn lại trong giao dịch bằng cách sử dụng lệnh hiển thị bên dưới

SET CONSTRAINTS ALL DEFERRED;

Điều này phải được chạy trước khi thực hiện UPDATE tuyên bố mà bạn đã xác định.

Ngoài ra, bạn có thể đặt ràng buộc thành INITIALLY DEFERRED trong định nghĩa bảng

create table test(a number not null initially deferred deferrable, b number);

Sau khi thực hiện một trong những điều này, bạn sẽ có thể chạy DML mà bạn có trong câu hỏi.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Unpivot on view không hoạt động trong Oracle

  2. Kích hoạt Oracle sau khi chèn hoặc xóa

  3. Tại sao mệnh đề IN oracle chỉ có giới hạn 1000 đối với dữ liệu tĩnh?

  4. Oracle Locks &table lock:Cách thức hoạt động

  5. Tìm kiếm cột XML trong SQL