pl/sql塊:procedural language sql帶有過程的sql語言。
sql 非過程化的 研究做什麼 只要告訴資料庫 增刪改查就可以了
過程語言(帶有分支或迴圈的語言)
一、模板示例
declare[ 可選:不是必須寫的 ]
宣告部分,宣告常量和變數
begin
開始部分,編寫程式
exception[ 可選:不是必須寫的 ]
異常部分,捕獲異常
end;
/ [ /表示編譯、執行,必須頂格 ]
二、具體例項
需求1:hello world!
在控制台
--開啟輸出流
set serverout on;
begin
dbms_output.put_line('hello,pl/sql!');
end;
需求2:列印乙個數字
declare
--宣告乙個型別為number的變數i
i number;
begin
--給i賦值,賦值使用 :=
i := 30;
--列印i的值
dbms_output.put_line('i的內容是'||i);
end;
需求3:捕獲 不能被0除 異常
declare
i number ;
begin
i:= 1/0;
exception
when zero_divide then
dbms_output.put_line('error');
end ;
/需求4:要求使用者輸入乙個雇員編號,之後根
據輸入的內容進行查詢,查詢雇員的姓名。
• 使用者的輸入資訊使用
「&」完成。
declare
eno number ;
en varchar2(30) ;
begin
-- 輸入的資訊儲存在
eno
裡eno := &no ;
-- 之後根據
eno
的值,對資料庫進行查詢操作
select ename into en from emp where empno=eno ;
dbms_output.put_line('
編號為:
'||eno||'
雇員的姓名為:
'||en) ;
exception
when no_data_found then
dbms_output.put_line('
沒有此雇員
') ;
end ;
/在以上的查詢中再進一步:可以根據雇員的編號查出姓名及其領導的姓名和所在的部門,
進行顯示。
declare
eno emp.empno%type ;
en emp.ename%type ;
mn emp.ename%type ;
dn dept.dname%type ;
dept dept %rowtype ;
begin
-- 輸入的資訊儲存在
eno
裡eno := &no ;
-- 之後根據
eno
的值,對資料庫進行查詢操作
select e.ename,m.ename,d.dname into en,mn,dn from emp e,dept d,emp m where
e.empno=7369 and e.mgr=m.empno and e.deptno=d.deptno ;
dbms_output.put_line('
編號為:
'||eno||'
雇員的姓名為:
'||en) ;
dbms_output.put_line('
編號為:
'||eno||'
雇員的上級姓名為:
'||mn) ;
dbms_output.put_line('
編號為:
'||eno||'
雇員所在的部門:
'||dn) ;
dbms_output.put_line(dept.deptno) ;
exception
when no_data_found then
dbms_output.put_line('
沒有此雇員
') ;
end ;
/說明:
• emp.empno%type ;
:表示以
emp
表中的
empno
欄位的型別定義變數
• e.ename,m.ename,d.dname into en,mn,dn
:一次可以同時放進去多個值
dept dept %rowtype ;
表示 dept
是一行資料,類似於
hibernate
的 po
PL SQL基本概念
首先明確pl sql主要作用作用 sql語言適合管理關係型資料庫但是它無法滿足更複雜的資料處理,所以產生 plsql plsql 使用者建立儲存過程 函式 觸發器 包及使用者自定義的函式。特點 plsql具有高階語言所擁有的程式設計結構,使用 plsql 可以極大的提高資料庫程式設計的靈活性,pls...
SPC基本概念及理解
一 概念 統計過程控制 statistical process control 簡稱spc 是指借助數理統計方法進行過程控制。它對生產過程進行分析評價,根據反饋資訊及時發現系統性因素出現的徵兆,並採取措施消除其影響,使過程維持在僅受隨機性因素影響的受控狀態,以達到控制質量的目的。理解 在生產過程中,...
Linux 基本概念及操作
建立檔名 進入目錄 終止當前程式 ctrl d鍵盤輸入結束或退出終端 ctrl s暫停當前程式,暫停後按下任意鍵恢復執行 ctrl z將當前程式放到後台執行,恢復到前台為命令fg ctrl a將游標移至輸入行頭,相當於home鍵 ctrl e將游標移至輸入行末,相當於end鍵 ctrl k刪除從游標...