什么是PL/SQL 結構化查詢語言(StrUCtured Query Language,簡稱SQL)是用來訪問關系型數據庫一種通用語言,它屬于第四代語言(4GL),其執行特點是非過程化,即不用指明執行的具體方法和途徑, 而是簡單的調用相應語句來直接取得結果即可。 例:delete from students where major=‘Nutrition’; 然而,對于有些復雜的業務流程又要求相應的程序來描述,那么4GL就有些無能為力了。 PL/SQL通過增加了用在其它過程性語言中的結構來對SQL進行了擴展,使得它不僅僅是一個數據庫查詢語言,而且也是一個編程語言PL/SQL代表面向過程化的語言與SQL語言的結合,在編寫PL/SQL代碼時可以在SQL語句中使用: (1)變量和類型 (2)控制語句 (3)過程和函數 (4)對象類型和方法 PL/SQL語言實現了將過程結構與Oracle SQL的無縫集成 例:修改一個學生的專業,假如沒有該學生,就插入一個新的記錄 --3gl_4gl.sql DECLARE v_newmajor VARCHAR2(10):=‘History’; v_firstname VARCHAR2(10):=‘Scott’; v_lastname VARCHAR2(10):=‘Urman’;BEGIN update students set major=v_newmajor where first_name=v_last_name and last_name=v_last_name; If SQL%notfound then insert into students(ID,FIRST_NAME,LAST_NAME,MAJOR) valueS (student_sequence.NEXTVAL,v_firstname, v_lastname,v_newmajor); End if; End;