Oracle數據庫——PL/SQL程序設計實例

一、最簡單的PL/SQL程序

  • 打印Hello World
    注意:如果要在屏幕上輸出信息,需要將serveroutput開關打開
set serveroutput on 
declare
	--說明部分(變量,光標或例外)
begin 
	--程序體
	dbms_output.put_line('Hello World');
end;
/

在這裏插入圖片描述
在這裏插入圖片描述

二、什麼是PL/SQL程序?

PL/SQL (Proceduce Language/SQL)

PLSQL是Oracle對sql語言的過程化擴展
指在SQL命令語言中增加了過程處理語句(如分支、循環等),使SQL語言具有過程處理能力

1、PL/SQL 是對SQL語言的擴展
2、PL/SQL是面向過程的語言

三、PL/SQL的提出

例1.爲職工漲工資,每人漲10%的工資。

update emp set sal=sal*1.1;

特點:命令式的語言

例2.按職工的職稱漲工資,總裁漲1000元,經理漲800元,其他員工漲400元。
在這裏插入圖片描述

不同數據庫的SQL擴展:

Oracle:PL/SQL DB2:
SQL/PL SQL Server:
Transac-SQL(T-SQL)

四、PL/SQL 基礎語法

1、PL/SQL的程序結構

declare
	說明部分(變量說明、光標申明、例外說明)
begin
	語句序列(DML語句)
exception
	例外處理語句
end;
/

2、說明部分

(1)定義基本變量

類型:char,varchar2, date,number,boolean,long
舉例:

	varl    	char(15);
	married		boolean  :=  true;
	psal		number(7,2);
set serveroutput on
--使用基本變量類型
declare
	--定義基本變量類型
	--基本數據類型
	pnumber number(7,2);
	--字符串變量
	pname varchar2(20);
	--日期變量
	pdate date;
begin
	pnumber := 1;
	dbms_output.put_line(pnumber);
	pname := 'Tom';
	dbms_output.put_line(pname);
	pdate := sysdate;
	dbms_output.put_line(pdate);
	--計算明天的日期
	dbms_output.put_line(pdate + 1);
end;
/

在這裏插入圖片描述

(2)引用型變量

舉例:
my_name emp.ename%type;

--引用型變量
set serveroutput on

declare
--定義引用型變量:查詢並打印7839的姓名和薪水
--pename varchar2(20) ;
--psal number ;
pename emp.ename%type;
psal emp.sal%atype;
begin
--得到7839的姓名和薪水
select ename,sal into pename, psal from emp where empno = 7839;
--打印姓名和薪水
dbms_output.put_line(pename||'的薪水量是'||psal) ;
end;
/

在這裏插入圖片描述

(3)記錄型變量

舉例:
emp_rec emp%rowtype;

記錄型變量分量的引用
emp_rec.ename := ‘ADAMS’;

--使用記錄變量,查詢並打印7839的姓名和薪水
set serveroutput on

declare
--定義記錄型變量:注意代表一行
emp_rec emp%rowtype;
begin
--得到7839的一行信息
select * into emp_rec from emp where empno = 7839;
--打印姓名和薪水
dbms_output.put_line(emp_rec.ename|| '的薪水量是'|| emp_rec.sal);
end;
/

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章