sql >> Databáze >  >> RDS >> Oracle

Sekvence Oracle PL/SQL se nezvyšuje podle očekávání s konstruktory objektů

Sekvence Oracle nejsou určeny k vytváření souvislých (přírůstek o jednu) ID v cílové tabulce. Je to proto, že jsou navrženy tak, aby byly velmi rychlé a umožňovaly vícevláknový přístup, což znamená, že pod kapotou jsou ID sekvencí ukládána do mezipaměti v různých transakcích.

Problém můžete zmírnit deklarováním sekvence pomocí NOCACHE , ale stále neexistuje žádná záruka, že ID nebudou přeskočena, pokud by se transakce z nějakého důvodu vrátila zpět.

Jako vždy Tom Kyte vysvětluje toto do hloubky.




  1. Systém správy relačních databází (RDBMS):MSSQL vs MySQL

  2. Porušení omezení integrity:1048 Sloupec 'taggable_id' nemůže mít hodnotu null

  3. jak spojit dva sloupce do jednoho se stávajícím názvem sloupce v mysql?

  4. ASP.NET používá SqlConnection connect MySQL