在開發階段往Oracle數據庫中多個表格中導入了許多測試數據,倘若一張張表執行“truncate table tablename”語句顯得十分繁瑣。在PL/SQL中可以用代碼進行批量刪除表格數據。代碼如下:
declare
cursor c_t is (select table_name from user_tables where table_name like 'D%');--聲明一個游標
table_name user_tables.table_name%type;--聲明一個表名的變量
begin
open c_t;
loop
fetch c_t into table_name;
exit when c_t%notfound;
execute immediate 'truncate table ' || table_name;--動態sql刪除
end loop;
close c_t;
end;
在匹配表名的時候可以使用通配符,選擇想要刪除的表格名稱,這里我選擇刪除名字以“D”開頭的所有表格數據。執行代碼即可完成對表格數據完成批量刪除操作。
