Oracle資料庫 迴圈建表語句及多表迴圈插入語句
阿新 • • 發佈:2019-01-04
Oracle資料庫的迴圈建表語句及多表迴圈插入語句
--建多張表的儲存過程
create or replace procedure createtablesis
i number (10) :=1;
beginfor i in 1..10 loop
execute immediate 'create table zry'||i||'
(k1 NUMBER NOT NULL PRIMARY KEY,
k2 VARCHAR2(10),
k3 VARCHAR2(50),
k4 DATE,
k5 CHAR(2)
)';
end loop;
end createtables;
--呼叫儲存過程
execute createtables
--刪除儲存過程
drop
procedure createtables
--給多張表插入多條記錄的sql語句
begin
declare i int; j int; tbname varchar2(50);
begin
for i in 1..5 loop
tbname := 'zry'||to_char(i);
for j in 1..3 loop
execute immediate 'INSERT INTO '||tbname||'(k1,k2,k3,k4,k5) values('||j||',''zry'',''west'',to_date(''2017-08-31'',''yyyy-mm-dd''),''01'')';
end loop;
end loop;
commit;
end;
end;