PL SQL程式設計

2021-09-01 09:05:17 字數 2793 閱讀 9122

1.具有程式語言的特點,他能把一組sql語句放到乙個模組中,使去更具有模組的程式的特點

2.採用過程性語言控制程式的結構,也就是說,在pl/sql中增強邏輯結構,如迴圈,判斷等程式結構

3.pl/sql可以對程式中的錯誤進行自動處理,使程式能夠在遇到錯誤時不會中斷,及他的處理異常機制

4.具有更好的可移植性,可以移植到另乙個oracle資料庫中

5.減少網路的互動,提高程式效能。

屬性用於引用變數或資料庫列的資料型別。以及表示表中一行的記錄型別

(1).%type

定義乙個變數,其資料型別與一定定義的某個資料變數(尤其是標的某一類)的資料型別相一致

(2).%rowtype

返回乙個記錄型別,其資料型別和資料庫表的資料結構相一致,這時可以使用%rowtype

if 條件 then

執行語句

end if;

語句二: if-then-else

if 條件 then

執行語句

else

執行其他語句

end if;

語句三: if-then-elsif

if 條件1 then

執行語句1

elsif 條件2 then

執行語句2

else

執行其他語句

end if;

(2).case條件語法如下

語句一:

case 條件表示式

when 條件表示式結果 1 then 語句段 1;

when 條件表示式結果2 then 語句段2;

when 條件表示式結果 n then 語句段n;

else statement n+1;

end case;

語句二:

case 條件表示式

when 條件表示式 1 then 語句段 1;

when 條件表示式2 then 語句段2;

when 條件表示式 n then 語句段n;

else statement n+1;

end case;

2.迴圈控制

迴圈公有三種型別:loop迴圈,while迴圈和for迴圈

(1)loop迴圈:

loop 

要執行的語句;

exit when 《條件語句》 --條件滿足,退出迴圈

end loop;

(2).while迴圈語法

while 《布林表示式》 loop

要執行的語句;

end loop;

(3).for迴圈語法

for 迴圈技術器 in 【reverse】 下限  ...  上限 loop

end loop;

3.順序控制

按順序執行語句。包括null語句和goto語句。

在oracle中,在執行乙個有增刪改查語句的pl/sql塊時,oracle會在記憶體中為其分配乙個緩衝區,將執行結果放在這個緩衝區中。而游標是指向該區的乙個時針。
靜態游標和動態游標,靜態游標又分為兩種,即隱式游標額顯示游標
顯示游標

(1) 宣告游標

cursor cursor_name [(parameter [, parameter]…)]

[return return_type] is select_statement;

cursor_name 指游標的名稱

parameter 為游標輸入指定引數,在指定資料型別,不能長度約束

(2).開啟游標

open cursor_name[(parameters)];

(3).提取游標

fetch cursor_name into variables;

variables指的是變數名

(4).關閉游標

close curso_name;

顯示游標屬性

%found :只在dml語句影響一行或多行時,

%found屬性才返回true。

%notfound :與·%found相反

%rowcount:返回dml影響的行數,沒有的話返回0; %isopen:返回游標是否開啟

3.使用顯示游標刪除或更新

cursor cursor_naem is select_statement for update [of columns]

4.使用迴圈游標簡化游標的讀取

for record_index in cursor_name loop executable_statements end loop;

5.no_data_found 和%notfound 的區別

(1).select … into 語句返回0條和多條記錄時觸發no_data_found

(2).當update或delete語句的where字句未找到時,觸發%notfound

(3).在提取迴圈中%notfound或%found來確定迴圈的退出條件,而不用no_data_found

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 程式設計

pl sql 程式結構 declare 宣告部分 宣告變數 型別 游標以及布局的儲存過程及函式 begin 執行部分 過程及sql語句,程式的主要部分,是必須的 end eg 基表為course declare v cno varchar 20 001 begin select from cours...

PL SQL程式設計基礎 PL SQL簡介

課程教師 李興華 課程學習者 陽光羅諾 日期 2018 07 28 知識點 1 了解pl sql的主要特點 2 掌握pl sql塊的基本結構 pl sql語法結構 語法 declare 宣告部分,例如。定義變數 常量 游標。begin 程式編寫 sql語句 exeception 處理異常 end 說...