編寫PL/SQL語句塊
a.建立sequence
create sequence yao.s_app
start with 0
maxvalue 100000
minvalue 0
nocycle
nocache
noorder;
b.寫pl/sql塊
variable v_dname;
begin
insert into department
values(:dname,s_*l);
end;
————————————————————
環境:oracle 10g/toad 以上代碼均通過測試,如有問題,請聯系,謝謝
PL/SQL基礎的塊結構
PL/SQL是一種塊結構的語言,組成PL/SQL程序的單元是邏輯塊,一個PL/SQL 程序包含了一個或多個邏輯塊,每個塊都可以劃分為三個部分。與其他語言相同,變量在使用之前必須聲明,PL/SQL提供了獨立的專門用于處理異常的部分,下面描述了PL/SQL塊的不同部分:
聲明部分(Declaration section)
聲明部分包含了變量和常量的數據類型和初始值。這個部分是由關鍵字DECLARE開始,如果不需要聲明變量或常量,那么可以忽略這一部分;需要說明的是游標的聲明也在這一部分。
執行部分(Executable section)
執行部分是PL/SQL塊中的指令部分,由關鍵字BEGIN開始,所有的可執行語句都放在這一部分,其他的PL/SQL塊也可以放在這一部分。
異常處理部分(Exception section)
這一部分是可選的,在這一部分中處理異常或錯誤,對異常處理的詳細討論我們在后面進行。
PL/SQL塊語法
[DECLARE]
---declaration statements
BEGIN
---executable statements
[EXCEPTION]
---exception statements
END
PL/SQL塊中的每一條語句都必須以分號結束,SQL語句可以使多行的,但分號表示該語句的結束。一行中可以有多條SQL語句,他們之間以分號分隔。每一個PL/SQL塊由BEGIN或DECLARE開始,以END結束。注釋由--標示。
PL/SQL塊的命名和匿名
PL/SQL程序塊可以是一個命名的程序塊也可以是一個匿名程序塊。匿名程序塊可以用在服務器端也可以用在客戶端。
命名程序塊可以出現在其他PL/SQL程序塊的聲明部分,這方面比較明顯的是子程序,子程序可以在執行部分引用,也可以在異常處理部分引用。
PL/SQL程序塊可背獨立編譯并存儲在數據庫中,任何與數據庫相連接的應用程序都可以訪問這些存儲的PL/SQL程序塊。ORACLE提供了四種類型的可存儲的程序:
. 函數
. 過程
. 包
. 觸發器
SQL語句用法: select case語句塊后面能否加where 條件
when。。。。。。。。。then。。。。。。。 when就相當於where
create table table_3(a varchar ,b varchar)
insert into table_3 values('1','2')
insert into table_3 values('1','3')
insert into table_3 values('2','2')
select * from table_3
---when語句中的類型和else必須一致
select (case a when '1' then'123'
when '2' then '456'
else 0
end ) as aa ,a,b from table_3
select case when a=1 then '中文'
when a=2 then '英文'
else '過問' end
from table_3