课程教师:李兴华

课程学习者:阳光罗诺

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

日期:2018-07-28

 

知识点:

1、 了解PL/SQL的主要特点

2、 掌握PL/SQL块的基本结构

 

PL/SQL

  • PL/SQL是Oracle在关系数据库结构化查询语言SQL基础上扩展得到的一种过程化查询语言。
  • SQL与编程语言之间的不同之处在于,SQL没有变量,SQL没有流程控制(分支、循环)。而PL/SQL是结构化的和过程化的结合体,而且最为重要的是,在用户执行多条SQL语句时,每一条SQL语句都是逐一的发送给数据库,而PL/SQL可以一次性将多条SQL语句一起发送给数据库,减少网络流量问题。
  •      SQL执行                                               PL/SQL执行

    PL/SQL编程基础——PL/SQL简介 Oracle 第1张PL/SQL编程基础——PL/SQL简介 Oracle 第2张

 

 

 

PL/SQL语法结构

语法:

DECLARE - 声明部分,例如。定义变量、常量、游标。 BEGIN - 程序编写、SQL语句 EXECEPTION - 处理异常 END: /  

 

 

说明:

  • 声明部分(DECLARE):包含变量定义、用户定义的PL/SQL类型、游标、引用的函数或者过程。
  • 执行部分(BEGIN):包含变量赋值、对象初始化、条件结构、迭代结构、嵌套的PL/SQL匿名块,或者是对局部或者时存储PL/SQL命名块的调用。
  •  异常部分:(EXECEPTION):包含错误处理语句,该语句可以像执行部分一样所有使用项。
  • 结束部分(END):程序执行到END表示结束,分号用于结束匿名块,而正斜杠(/)执行块程序。

 

PL/SQL——范例

编写不做任何工作的Pl/SQL块

       

1 BEGIN 2 3 NULL; 4 5 END; 6 7 /

PL/SQL编程基础——PL/SQL简介 Oracle 第3张

此程序现在不做任何工作,只是出现了结构而已。

 

范例:输出Hello World。

1 BEGIN 2 3 DBMS_OUTPUT.put_line('Hello World!'); 4 5 END; 6 7 /

 

 PL/SQL编程基础——PL/SQL简介 Oracle 第4张

默认情况下,系统输出的显示屏幕时关闭的,所以需要修改显示的设置。

1 SET SERVEROUTPUT ON;

 

打开之后再次执行就会显示内容:

PL/SQL编程基础——PL/SQL简介 Oracle 第5张

范例:编写一个简单的PL/SQL程序。

PL/SQL编程基础——PL/SQL简介 Oracle 第6张

 

范例:输入一个雇员编号,而后取得指定的雇员姓名。

 1 DECLARE  2  3 v_eno NUMBER; --接收雇员编号  4  5 v_ename VARCHAR2(20); --接收雇员姓名  6  7 BEGIN  8  9 v_eno:=&empno; --由键盘输入输入 10 11 SELECT ename INTO v_ename FROM emp WHERE empno=v_eno; 12 13 DBMS_OUTPUT.put_line('雇员编号为:'||v_eno); 14 15 DBMS_OUTPUT.put_line('雇员的姓名为:'||v_ename); 16 17 END; 18 19 /

 

查询结果如图所示:

 PL/SQL编程基础——PL/SQL简介 Oracle 第7张

 

小结:

1、 PL/SQL可以同时向数据库执行多条语句

2、 PL/SQL可以进行变量的定义与程序语言的编写。

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄