Maison > base de données > tutoriel mysql > 将所有的 table 清空(可回滚)

将所有的 table 清空(可回滚)

WBOY
Libérer: 2016-06-07 14:56:18
original
1068 Les gens l'ont consulté

这段时间,有个配置库需要导给不同人,每个人导到库后都需要清空里面的各个表,如果逐个表来点的话,挺麻烦的,故写了以下 PL/SQL 脚本。 无 /** 将所有的 table 清空(可回滚)[Oracle 10g下运行通过]**/declare -- 指向所有 table 的游标 cursor c_t is selec

这段时间,有个配置库需要导给不同人,每个人导到库后都需要清空里面的各个表,如果逐个表来点的话,挺麻烦的,故写了以下 PL/SQL 脚本。
/** 
   将所有的 table 清空(可回滚)[Oracle 10g下运行通过]
**/
declare
  -- 指向所有 table 的游标
  cursor c_t is 
    select table_name
    from user_tables;
  
  table_name user_tables.table_name%type;
begin
  open c_t;
  loop 
       fetch c_t into table_name; 
       exit when c_t%notfound;
       
       -- 用 delete 而不用 truncate 是为了能户用户回滚,减少误操作
       execute immediate 'delete from ' || table_name;
  end loop;
  close c_t;
end;
Copier après la connexion
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal