在oracle中使用pl/sql來擴充套件sql的功能,使得sql能夠更加的靈活,功能更加強大,效率更高。pl/sql讓sql也能執行判斷,迴圈等操作。主要記錄一下pl/sql的基本語法和基本條件判斷語句和迴圈語句供忘記了方便查閱。
1.pl/sql的語法結構:
declare
//這部分用於宣告變數
begin
//這部分用於處理業務邏輯
exception
//這部分用於處理例外也就是異常情況
end;
例如:
declare
uname varchar2(10);
hello varchar2(10) := 'helloworld'; --為變數賦值
vsal emp.sal%type; --宣告乙個引用型別的變數
pall emp%rowtype; --宣告乙個記錄型別的變數
digit number:=#---提示使用者輸入,然後根據使用者輸入執行相應的操作
...begin
dbms_output.put_line(hello);
exception
when exception_name then
//操作
end;
2.)pl/sql的條件判斷語句
if 條件 then
語句;elsif 條件then
語句;else
語句;end if;
例如:根據輸入的年齡判斷是處於哪個階段的人
declare
age number := #
begin
if age < 18 then
dbms_output.put_line('你還是未成年人');//表示系統輸出語句,類似於system.out.print();
elsif age > 18 and age <= 40 then
dbms_output.put_line('你是青年人');
else
dbms_output.put_line('你是中年人!');
end if;
end;
3.)pl/sql的迴圈語句
在pl/sql中有三種迴圈結構。
3.1)while 條件 loop
語句塊;
end loop;
例如:迴圈輸出1-10的數。
declare
step number := 1;
begin
while step <= 10 loop
dbms_output.put_line(step);
step := step + 1;
end loop;
end;
3.2)loop 迴圈語句
loop
exit when 退出條件;
語句塊;
end loop;
例如:輸出1-9的數。
declare
step number := 1;
begin
loop
exit when step > 10;--當step>10退出迴圈
dbms_output.put_line(step || ' ');
step := step + 1;
end loop;
end;
3.3)for語句迴圈結構
for 迴圈變數 in n..n loop
語句塊;
end loop;
例如:輸出1-10之間的數。
declare
begin
for step in 1.. 10 loop
dbms_output.put_line(step);
end loop;
end;
案例1--使用plsql輸出菱形
declare
m number := 10;
begin
for x in -m..m loop
for y in -m..m loop
if abs(y) + abs(x) <= m then
dbms_output.put('*');
else
dbms_output.put(' ');
end if;
end loop;
dbms_output.new_line();
end loop;
end;
案例2--使用plsql輸出三角形。
declare
m number := 10;
begin
for x in reverse -m..m loop
for y in -m..m loop
if abs(y) + abs(x) <= m and x>=0 then
dbms_output.put('*');
else
dbms_output.put(' ');
end if;
end loop;
dbms_output.new_line();
end loop;
end;
以上就是pl/sql的基本語法以及基本的條件和迴圈結構。
Oracle pl sql基礎 迴圈
一 迴圈語法以及用法 1 loop的語法以及用法,如下 loop 處理程式 end loop 例子 declare v counter binary integer 1 定義變數 begin loop dbms output.put line v counter v counter v counte...
《Oracle PL SQL程式設計指南》06 游標
內容導航 游標,是一種資料型別,不是物件,在declare 中宣告,一般放在宣告的最後一條語句。必須先定義游標變數方可使用。游標是從資料表中提取出來的資料,以臨時表的形式存放在記憶體 上下文,工作區 中,在游標中有乙個資料指標。在初始狀態下指向的是首部,利用fetch語句可以移動該指標,從而對游標中...
Oracle PL SQL語言基礎 控制語句
預定義異常種類 異常處理 異常說明 access into null 在未初始化物件時出現 case not founf 在case 語句中的選項與使用者輸入的資料不匹配時出現 collection is null 在給尚未初始化的表或陣列賦值時出現 cursor already open 使用者試...