pl/sql(procedure language/sql)
示例1:為職工漲工資,每人漲10%的工資。
update emp set sal = sql * 1.1
示例2:按職工的職稱漲工資,總裁漲1000元,經理漲800元,其他人員漲400元。
這樣的需求無法用一條sql語句來實現,需要借助其他程式來幫助完成,也可以使用pl/sql。
declare
說明部分(變數說明,游標說明,例外說明)
begin
語句序列
exception
例外處理語句
end;
說明變數(char, varchar2, date, number, boolean, long)
var1 char(15);說明變數名,資料型別和長度後用分號結束說明語句。
married boolean :=true; :=為變數賦值
psal number(7,2);
my_name emp.name%type; 引用型變數,即my_name的型別與 emp表中ename列的型別一樣
emp_rec emp%rowtype;記錄型變數
引用型變數
declare
pename emp.ename%type;
psal emp.sal%type;
begin
select ename,sal into pename,psal from emp where empno=7839;
dbms_output.put_line(pename||'的薪水是'||psal);
end;
/
列印:king的薪水是5000
記錄型變數
declare
emp_rec emp%rowtype;
begin
select * into emp_rec from emp where empno=7839;
dbms_output.put_line(emp_rec.ename||'的薪水是'||emp_rec.sal);
end;
列印:king的薪水是5000
示例:如果從控制台輸入1則輸出我是1,否則輸出我不是1
declare
pnum number := # –&直接從位址賦值
begin
if pnum = 1 then
dbms_output.put_line(『我是1』);
else
dbms_output.put_line(『我不是1』);
end if;
end;
範例:輸出1到10的數字
declare
step number := 1;
begin
while
step
<=10
loop
dbms_output.put_line(step);
step:=step+1;
endloop;
end;
declare
step number:=1;
begin
forstep
in1.
.10loop
dbms_output.put_line(step);
endloop;
end;
PL SQL程式語言
pl sql程式語言 pl sql procedure language sql pl p 過程化 l 語言 sql 結構化查詢語言 plsql 是 oracle 對 sql 語言的過程化擴充套件,指在 sql 命令語言中增加了過程處理語句 如分支 迴圈等 使 sql 語言具有過程處理能力。把 sq...
PLSQL程式設計
create table emomy1 emon varchar2 100 time1 date drop table emomy1 select from emomy1 begin dbms output.put line hello,world end 定義變數 declare name con...
PL SQL程式設計
1.具有程式語言的特點,他能把一組sql語句放到乙個模組中,使去更具有模組的程式的特點 2.採用過程性語言控制程式的結構,也就是說,在pl sql中增強邏輯結構,如迴圈,判斷等程式結構 3.pl sql可以對程式中的錯誤進行自動處理,使程式能夠在遇到錯誤時不會中斷,及他的處理異常機制 4.具有更好的...