Friday, July 3, 2020

Script to delete multiple tables using a single query

Script to delete multiple tables using a single query
July 03, 2020

SYS @ catdb > create table xyz (id number);

Table created.

SYS @ catdb > create table t1 as select * from xyz;

Table created.


SYS @ catdb > SELECT * FROM TAB where TNAME IN ('T1','XYZ');

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
T1                             TABLE
XYZ                            TABLE


SYS @ catdb >
SYS @ catdb > BEGIN

 FOR i IN (SELECT table_name FROM user_tables WHERE table_name IN ('T1','XYZ'))

 LOOP

      EXECUTE IMMEDIATE 'DROP TABLE ' || i.table_name;

  END LOOP;

END;
/  

PL/SQL procedure successfully completed.

SYS @ catdb > SELECT * FROM TAB where TNAME IN ('T1','XYZ');

no rows selected

No comments:

Post a Comment