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;
/

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/hyh17808770899/article/details/106848856