Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Zresetuj sekwencję zgodnie z rokiem, a nie o wartość minimalną lub maksymalną

Utwórz cykliczne zaplanowane zadanie, które resetuje sekwencję o północy 1 stycznia każdego roku.

Coś takiego (zakładając, że masz YOUR_SCHEMA.RESET_ANNUAL_SEQUENCE procedura resetowania):

BEGIN
  DBMS_SCHEDULER.CREATE_JOB (
    job_name             => 'reset_annual_sequence_job',
    job_type             => 'PLSQL_BLOCK',
    job_action           => 'BEGIN your_schema.reset_annual_sequence; END;',
    start_date           => ADD_MONTHS( TRUNC( SYSTIMESTAMP, 'YY' ), 12 ),
    repeat_interval      => 'FREQ=YEARLY; BYDATE=0101;', 
    enabled              =>  TRUE,
    comments             => 'Annual sequence reset'
  );
END;
/



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. AUTONOMICZNA_TRANSAKCJA

  2. Dlaczego ta zbiorcza aktualizacja szablonu hibernacji nie działa

  3. Liczba wierszy Oracle w tabeli według liczby (*) vs NUM_ROWS z DBA_TABLES

  4. Wielkie litery w nazwiskach osób w programowaniu

  5. Uzyskiwanie dodatkowych rzędów - Po dołączeniu do 3 stołów za pomocą Left Join