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

Автоматично увеличаване на първичния ключ в базата данни на Oracle

Както казва Орбман, стандартният начин да го направите е с последователност. Това, което повечето хора също правят, е да съчетаят това със спусък за вмъкване. Така че, когато се вмъкне ред без идентификатор, тригерът се задейства, за да попълни идентификатора вместо вас от последователността.

CREATE SEQUENCE SEQ_ROLLINGSTOCK_ID START WITH 1 INCREMENT BY 1 NOCYCLE;

CREATE OR REPLACE TRIGGER BI_ROLLINGSTOCK
BEFORE INSERT ON ROLLINGSTOCK
REFERENCING OLD AS OLD NEW AS NEW
FOR EACH ROW
 WHEN (NEW.ID IS NULL)
BEGIN
  select SEQ_ROLLINGSTOCK_ID.NEXTVAL
   INTO :NEW.ID from dual;
END;

Това е един от малкото случаи, в които има смисъл да се използва тригер в Oracle.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Свържете Node.js с Oracle на Windows платформа

  2. Проблем с обединяването на пролетни връзки

  3. Актуализиране на таблицата на Oracle от макрос на Excel VBA с помощта на ODBC връзка

  4. Каква е разликата в PL/SQL API между Oracle Express Edition (XE) и Standard Edition (SE)?

  5. как да промените размера на колона