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

Как да нулирам последователност в Oracle?

Ето една добра процедура за нулиране на всяка последователност на 0 от гуруто на Oracle Том Кайт. Страхотна дискусия за плюсовете и минусите също в връзките по-долу.

[email protected]> 
create or replace
procedure reset_seq( p_seq_name in varchar2 )
is
    l_val number;
begin
    execute immediate
    'select ' || p_seq_name || '.nextval from dual' INTO l_val;

    execute immediate
    'alter sequence ' || p_seq_name || ' increment by -' || l_val || 
                                                          ' minvalue 0';

    execute immediate
    'select ' || p_seq_name || '.nextval from dual' INTO l_val;

    execute immediate
    'alter sequence ' || p_seq_name || ' increment by 1 minvalue 0';
end;
/

От тази страница:Динамичен SQL за нулиране на стойността на последователността
Тук е и друга добра дискусия:Как да нулирате последователности?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL:Анализирайте низ, разделен със запетая, и го използвайте като присъединяване

  2. customer.pk_name присъединяване към транзакции.fk_name срещу customer.pk_id [serial] присъединяване към транзакции.fk_id [цяло число]

  3. Създаване на персонализиран екран за влизане в Oracle Forms 10g

  4. Намерете дължината на най-дългия ред в колона в оракул

  5. Относно елемента формат V в Oracle