db2儲存過程開發實戰備忘錄

2021-06-05 02:51:53 字數 816 閱讀 2742

1. 同時設定多個變數,col1,2是列名,v1,v2是變數名

select col1,col2 into v1,v2 from tablename

2. 使用動態sql

set sqlstr = 'update table set col1 = ?,col2 = ? where id = ? and sid = ?';

prepare s1 from sqlstr;

execute s1 using v1,v2,v3,v4;

3. 使用動態sql刪除表資料,替代delete from。適用於表資料太多,回滾日誌太大的情況

首先定義乙個變數sqlstr;接著

set sqlstr = 'alter table yourtablename activate not logged initially with empty table';

prepare s1 from sqlstr;

execute s1;

4.使用自定義異常及異常處理

自定義異常:declare yourexception condition for sqlstate 't0001';   't0001'是自定義狀態碼。

自定義異常處理:這裡使用exit,也可以定義continue或其它的

declare exit handler for yourexception

begin

--這裡一般會做的事是設定乙個返回引數表示成功或失敗,另外插入日誌表

end;

5.取得插入,更新,刪除的記錄數

get diagnostics rowcount = row_count;

db2儲存過程批量插入資料 db2儲存過程批量更新

db2儲存過程批量更新 雲伺服器 elastic compute service,簡稱ecs 是阿里雲提供的效能卓越 穩定可靠 彈性擴充套件的iaas infrastructure as a service 級別雲計算服務。雲伺服器ecs免去了您採購it硬體的前期準備,讓您像使用水 電 天然氣等公共...

db2儲存過程批量插入資料 db2儲存過程批量提交

db2儲存過程批量提交 雲伺服器 elastic compute service,簡稱ecs 是阿里雲提供的效能卓越 穩定可靠 彈性擴充套件的iaas infrastructure as a service 級別雲計算服務。雲伺服器ecs免去了您採購it硬體的前期準備,讓您像使用水 電 天然氣等公共...

DB2儲存過程雜談

db2常用的異常處理方式分為三種 undo 回滾 exit 退出 continue 繼續執行 declare undo exit continue handler for 異常處理的物件可以為針對指定的sqlstate declare undo exit continue handler for s...