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

Oracle:последователността MySequence.currval все още не е дефинирана в тази сесия

mysequence.CURRVAL връща най-новата стойност, получена от последователността mysequence във вашата сесия и следователно не се дефинира, докато не получите стойност, използвайки mysequence.NEXTVAL поне веднъж в сесията. Целта на CURRVAL е да ви позволи да използвате стойността на последователността повече от веднъж във вашия код, напр.

insert into parent (parent_id, ...) values (mysequence.NEXTVAL, ...);

insert into child (parent_id, ...) values (mysequence.CURRVAL, ...);

Ако CURRVAL току-що върна последната стойност, получена от последователността от който и да е сесия, то би било безполезно в горния код и всъщност би могло да доведе до повреда на данните!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да създам динамична клауза WHERE?

  2. Вземете тип данни на полето в оператор select в ORACLE

  3. Не е валиден месец при вмъкване на данни в oracle

  4. Как да боравим с незадължителни параметри в SQL заявка?

  5. Активиране на TLS в Oracle Apps R12.2