oracle(40) PL SQL 儲存過程

2021-09-16 22:16:32 字數 1366 閱讀 1284

● 儲存過程

● 以上操作完整原始碼:

--儲存過程的建立

create

orreplace

procedure helloword as

begin

dbms_output.put_line(

'hello world');

end;

--建立漲工資的儲存過程

create

orreplace

procedure addsal(pno in myemp.empno%

type)as

--定義變數

prec myemp%rowtype;

begin

select

*into prec from myemp t where t.empno = pno;

update myemp t set t.sal = t.sal +

100where t.empno = pno;

--事務的提交要在呼叫端做

dbms_output.put_line(

'漲工資前是:'

|| prec.sal ||

' 漲工資後是:'

||(prec.sal +

100));

end;

select

*from myemp t where t.empno =

7369

;---計算指定員工的年薪

create

orreplace

procedure countysal(pno in emp.empno%

type

, ysal out number)

is psal emp.sal%

type

; pcomm emp.comm%

type

;begin

--多個值的賦值是按照先後順序來賦值的

select t.sal, t.comm into psal, pcomm from emp t where t.empno = pno;

ysal := psal *

12+ nvl(pcomm,0)

;end countysal;

--通過pl/sql程式呼叫儲存過程

declare ysal number;

begin

countysal(

7369

, ysal)

; dbms_output.put_line(ysal)

;end

;

如有錯誤,歡迎指正!

Oracle筆記 十 PL SQL儲存過程

or replace 建立或替換,如果存在就替換,不存在就建立create or replace procedure piscursor cisselect from dept2 for update beginfor row record in c loopif row record.deptno...

PL SQL如何除錯Oracle儲存過程

分步閱讀 除錯過程對找到乙個存過的bug或錯誤是非常重要的,oracle作為一款強大的商業資料庫,其上面的存過少則10幾行,多則上千行,免不了bug的存在,存過上千行的話,找bug也很費力,通過除錯可以大大減輕這種負擔。找到想要除錯的存過,左鍵單擊選中該存過 圖中位置1 然後右鍵單擊該存過,從彈出選...

PL SQL如何除錯Oracle儲存過程

除錯過程對找到乙個存過的bug或錯誤是非常重要的,oracle作為一款強大的商業資料庫,其上面的存過少則10幾行,多則上千行,免不了bug的存在,存過上千行的話,找bug也很費力,通過除錯可以大大減輕這種負擔。步驟閱讀 2找到想要除錯的存過,左鍵單擊選中該存過 圖中位置1 然後右鍵單擊該存過,從彈出...