學習儲存過程時寫的個例子
RK表的欄位變化時,插入細表的記錄到另一個表中:
create or replace procedure mxz2(bill in varchar2) is
cursor curbill is
select style, qty, taxcost,amnt from rks where rkbill = bill;
csstyle. varchar2(15);
csqty number(18, 2);
cscost number(18, 2);
seqno number(18);
sty_seqno number(18);
vdate date;
jamnt number(18,2);
jcqty number(18,2);
jcamnt number(18,2);
begin
-- select operdate into vdate from rk where rkbill=bill;
--當表觸發器中呼叫儲存過程時,不能在這裡寫呼叫原表的欄位資訊。
vdate:='2008-10-01';
open curbill;
loop
fetch curbill
into csstyle, csqty, cscost,jamnt;
exit when curbill%notfound;
begin
select max(maxseqno) into sty_seqno from mxz where style. =csstyle;
if (sty_seqno is null) then
begin
jc_qty:=0;
jc_amnt:=0;
end;
else
select jcqty,jctamnt into jcqty,jcamnt from mxz where maxseqno=sty_seqno;
end if ;
select max(maxseqno) into seqno from mxz ;
if (seqno is null) then
seqno:=1;
else
seqno:=seqno+1;
end if ;
insert into mxz
(maxseqno,style,validdate,cost,qty,jamnt,jcqty,jcamnt)
values
(seqno,csstyle,vdate,cscost,csqty,jamnt,jcqty+csqty,jcamnt+jamnt );
end;
end loop;
close curbill;
commit; ---提交事務--觸發器呼叫時,也不允許有事務存在!
exception
when others then
rollback;
end mxz2;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16486600/viewspace-524505/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Mysql 5.7儲存過程的學習MySql儲存過程
- mysql返回一個結果集的儲存過程小例子MySql儲存過程
- SQL 儲存過程裡呼叫另一個儲存過程SQL儲存過程
- oracle儲存過程書寫格式Oracle儲存過程
- MySQL的寫入資料儲存過程MySql儲存過程
- Sql儲存過程分頁--臨時表儲存SQL儲存過程
- mssql 儲存過程呼叫另一個儲存過程中的結果的方法分享SQL儲存過程
- laravel建立一個儲存過程Laravel儲存過程
- oracle的儲存過程Oracle儲存過程
- Oracle儲存過程中跳出迴圈的寫法Oracle儲存過程
- MYSQL學習與實驗(八)——儲存過程實驗MySql儲存過程
- Oracle儲存過程乾貨(一):儲存過程基礎Oracle儲存過程
- 儲存過程與儲存函式儲存過程儲存函式
- SQLSERVER儲存過程SQLServer儲存過程
- 呼叫儲存過程儲存過程
- mysql 儲存過程MySql儲存過程
- unidac儲存過程儲存過程
- firedac儲存過程儲存過程
- Oracle儲存過程Oracle儲存過程
- Sqlserver中的儲存過程SQLServer儲存過程
- Mysql 儲存過程的使用MySql儲存過程
- JdbcTemplate調儲存過程JDBC儲存過程
- 造數儲存過程儲存過程
- 儲存過程——遊標儲存過程
- 儲存過程 傳 datatable儲存過程
- JAVA儲存過程(轉)Java儲存過程
- MySQL之儲存過程MySql儲存過程
- MySQL---------儲存過程MySql儲存過程
- linux呼叫儲存過程Linux儲存過程
- Winform呼叫儲存過程ORM儲存過程
- mysql儲存過程整理MySql儲存過程
- Oracle儲存過程-1Oracle儲存過程
- mysql和orcale的儲存過程和儲存函式MySql儲存過程儲存函式
- 通過一個實際的例子學習 combineLatest
- Sqlsugar呼叫Oracle的儲存過程SqlSugarOracle儲存過程
- mysql儲存過程的引數MySql儲存過程
- plsqlDevloper 儲存過程的除錯SQLdev儲存過程除錯
- MYSQL儲存過程-練習3 repeat迴圈MySql儲存過程
- MYSQL儲存過程-練習4 loop迴圈MySql儲存過程OOP