oracle迴圈建表,迴圈插入資料

2021-10-10 04:47:47 字數 1303 閱讀 4954

廢話不多說直接上例子:

例一、給現有表裡面根據字段新增資料:

//開始建立儲存過程

begin

//宣告迴圈變數

declare j int;

//宣告要插入資料的表

tbname varchar2(50) default 'user';

begin

for j in 4..9 loop

//執行宣告的insert

execute immediate 'insert into '||tbname||'(id,username,***,age) values('||j||',''張三'',''2'',''2'')';

//結束loop

end loop;

//提交事物

commit;

end;

//結束過程

end;

例子

二、動態建立表並插入資料

//宣告變數

declare

v_sql varchar2(1000);

begin

-- 建立表sql t1

v_sql := 'create table t1(';

for x in 1..20 loop

v_sql := v_sql || 'v' || x || ' varchar(100),';

v_sql := v_sql || 'n' || x || ' number,';

end loop;

v_sql := substr(v_sql, 1, length(v_sql) -1);

v_sql := v_sql || ')';

execute immediate v_sql;

-- 插入 100 條記錄

for x in 1..100 loop

v_sql := 'insert into t1(v1,n1,v2,n2) values(:0, :1, :2, :3)';

execute immediate v_sql using x, x, x, x;

end loop;

-- 複製 另外 19 張表 t2 - t20

for x in 2..20 loop

v_sql := 'create table t' || x || ' as select * from t1';

execute immediate v_sql;

end loop;

end;

以上就是兩種迴圈方法,希望能幫助到有需要的盆友。

Oracle 迴圈插入資料 Demo

oracle 迴圈插入資料 demo declare maxnumber constant int 1000 i int 1 begin for i in 1.maxnumber loop insert into studentinformation id name address,hobby va...

Oracle 游標迴圈插入資料

遇到乙個需求統計歷史每個月底的資料插入到表中,查詢了資料發現使用游標會很方便,記錄一下解決思路 先查出每個月月底的日期作為條件 select to char lastday,yyyy mm dd lastday from select last day add months to date 2014...

迴圈鍊錶插入節點

由於迴圈鍊錶的迴圈特性,所以頭節點和尾節點可以被當成一般節點。所以,我們可以在寫迴圈鍊錶節點插入的函式中,可以呼叫自定義的函式 如下 void insert node list t insert node,list t prev node,list t next node 當我們寫插入函式的時候可以...