Oracle
 sql >> база данни >  >> RDS >> Oracle

колона не е нула отлагаема

Тук има два варианта. Или трябва да зададете ограничението да бъде отложено в транзакцията, като използвате командата, показана по-долу

SET CONSTRAINTS ALL DEFERRED;

Това трябва да се изпълни преди извършване на UPDATE твърдение, което сте дефинирали.

Като алтернатива можете да зададете ограничението да бъде INITIALLY DEFERRED в дефиницията на таблицата

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

След като направите някое от тези неща, трябва да можете да стартирате DML, който имате във въпроса.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. заредете множество csv в една таблица чрез SQLLDR

  2. Entity Framework &Oracle:Не може да се вмъкне VARCHAR2> 1999 знака

  3. Използване на клаузата IN с низ, разделен със запетая, от изхода на функция replace() в Oracle SQL

  4. Как да използвам псевдоним в клаузата Where?

  5. Внедряване на CAS към Oracle APEX