sql >> Databasteknik >  >> RDS >> Oracle

Finns det ett bästa sätt att undvika exekvering av processer mer än en gång i Oracle?

Använd dbms_lock.allocate_unique tillsammans med dbms_lock.request. användningsanteckningarna säger:

Den första sessionen att anropa ALLOCATE_UNIQUE med ett nytt låsnamn gör att ett unikt lås-ID genereras och lagras i tabellen dbms_lock_allocated. Efterföljande anrop (vanligtvis genom andra sessioner) returnerar det lås-ID som tidigare genererats.

Jag tror att det här kan vara vad du är ute efter.



  1. Hur man utesluter poster med vissa värden i sql select

  2. MIN() – Hitta minimivärdet i en kolumn i MySQL

  3. Vad gör kolon tecken :i en SQL-fråga?

  4. Hur skapar och fyller man i en tabell i ett enda steg som en del av en CSV-importoperation?