Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

मैं अपने Oracle DB में सभी अनुक्रमों को 0 मान पर कैसे रीसेट कर सकता हूं?

आपको गतिशील SQL की आवश्यकता नहीं है।

begin
for i in (select sequence_name from dba_sequences where sequence_name like '%SEQ_PR%') LOOP
  reset_seq(i.sequence_name);           --> this is just fine
end loop;
end;
/

उदाहरण (मैं USER_SEQUENCES का उपयोग कर रहा हूं इसके बजाय):

SQL> select seq_pr1.nextval from dual;

   NEXTVAL
----------
         9

SQL> select seq_pr2.nextval from dual;

   NEXTVAL
----------
         8

SQL> begin
  2  for i in (select sequence_name from user_sequences where sequence_name like '%SEQ_PR%') LOOP
  3    reset_seq(i.sequence_name);
  4  end loop;
  5  end;
  6  /

PL/SQL procedure successfully completed.

SQL> select seq_pr1.nextval from dual;

   NEXTVAL
----------
         1

SQL> select seq_pr2.nextval from dual;

   NEXTVAL
----------
         1

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. Amazon Python 2.7 लैम्ब्डा:DPI-1047:64-बिट Oracle क्लाइंट लाइब्रेरी लोड नहीं की जा सकती:libclntsh.so

  2. Oracle Apps 11i/R12 में FRD ट्रेस कैसे जनरेट करें?

  3. प्रदर्शन और मापनीयता मुद्दों के बिना डेटाबेस गतिविधि का ऑडिट कैसे करें?

  4. एक साथ सेलेरी कार्यों के बीच Oracle डेटाबेस कनेक्शन साझा करना

  5. आईडी और न्यूनतम/अधिकतम तिथियों द्वारा बाइनरी वैरिएबल को समूहीकृत करना