- 4
- 0
- 约1.13万字
- 约 14页
- 2017-06-02 发布于河南
- 举报
第6课 pl sql语法
一、PL/SQL 程序设计简介
1.1 PL/SQL概述
PL/SQL是 Procedure Language Structured Query Language 的缩写。Oracle的SQL是支持ANSI(American national Standards Institute)和ISO92(International Standards Organization)标准的产品。PL/SQL是对SQL语言存储过程语言的扩展。从Oracle6以后,Oracle的RDBMS附带了PL/SQL。它现在已经成为一种过程处理语言,简称PL/SQL(发音:pea ell sequel)。目前的PL/SQL包括两部分,一部分是数据库引擎部分;另一部分是可嵌入到许多产品(如C语言,JAVA语言等)工具中的独立引擎。可以将这两部分称为:数据库PL/SQL和工具PL/SQL。两者的编程非常相似。都具有编程结构、语法和逻辑机制。工具PL/SQL另外还增加了用于支持工具(如Oracle Forms)的句法,如:在窗体上设置按钮等。本章主要介绍数据库PL/SQL内容。
1.2 PL/SQL的好处
减少网络传输量
开发标准的代码
力争低偶联与高内聚性(少用全局变量和建立包来实现)
隐藏实现细节
统一的和集中的方式处理工程项目,以达到重用
更好地设计数据库应用(标准化、降低维护)
支持SQL语句
支持面向对象编程
更好的性能
轻便性(portability)
更高的编程效率(productivity)
1.3 PL/SQL 可用的SQL语句
PL/SQL是Oracle系统的核心语言,现在Oracle的许多部件都是由PL/SQL写成。在PL/SQL中可以使用的SQL语句有:
在PL/SQL中可以用的SQL语句有:
INSERT
UPDATE
DELETE
SELECT INTO
COMMIT
ROLLBACK
SAVEPOINT
提示:在 PL/SQL中只能用 SQL语句中的 DML 部分,不能用 DDL 部分,如果要在PL/SQL中使用DDL(如Create table 等)的话,只能以动态的方式来使用。
Oracle 的 PL/SQL 组件在对 PL/SQL 程序进行解释时,同时对在其所使用的表名、列名及数据类型进行检查。
PL/SQL 可以在SQL*PLUS 中使用。
PL/SQL 可以在高级语言中使用。
PL/SQL可以 在Oracle的 开发工具中使用。
其它开发工具也可以调用PL/SQL编写的过程和函数,如Power Builder 等都可以调用服务器端的PL/SQL过程。
1.4 PL/SQL内置包
除了Oracle引擎提供环境让程序设计者根据应用要求来开发各个存储过程、函数、包及触发器外。Oracle系统本身提供了一套功能强大的内置包。这些系统包都以DBMS_开头进行命名。用这些包可以完成许多Oracle管理功能。关于Oracle内置包的详细说明请参考《Oracle8I Supplied PL/SQL Packages Reference》原版资料。下面是一些常用包的简单说明:
DBMS_ALERT 数据库报警,允许会话间通信;
DBMS_JOB 任务调度服务;
DBMS_LOB 大对象操作用的包;
DBMS_PIPE 数据库管道用的包;
DBMS_SQL 动态SQL所用的包;
UTL_FILE 文本文件I/O所用的包。
二、PL/SQL 块结构和组成元素
2.1 PL/SQL结构
PL/SQL程序由三个块组成,即 声明部分、执行部分、异常处理部分。
PL/SQL块的结构如下:
Declare
/* 声明部分: 在此 声明PL/SQL用到的变量,类型及光标 */
begin
/* 执行部分: 过程及SQL 语句 , 即程序的主要部分 */
Exception
/* 执行异常部分: 错误处理 */
End;
其中 执行部分是必须的。
2.2 标识符
PL/SQL程序设计中的标识符定义与SQL 的标识符定义的要求相同。要求和限制有:
标识符名不能超过30字符;
第一个字符必须为字母;
不分大小写;
不能用’-‘(减号);
不能是SQL保留字。
举例1: 合法的标识符:
declare
v_name varchar2(20); /* 存放name 列的值 */
v_sal number(9,2); /* 存放 sal 列的值 */
举例2: 不合法的标识符:
declare
v-name varchar2(20); /* 存放name 列的值 */
2001_sal number(9,
您可能关注的文档
- 皇城牌心脑血管治疗仪对心脑血管疾病治疗后有关指标的观察.pdf
- 盈馨婚庆监理有限责任公司.ppt
- 监测装置故障登记及检修记录表.doc
- 益熙PLC光分路器介绍.doc
- 监理12案例.ppt
- 监理员培训试题5.doc
- 监理工程师守则.doc
- 监理工程师聘用协议new.doc
- 监理月报样表.doc
- 监理规范表格ABC纯WORD文档.doc
- DB63_T 2468-2025 盐湖工业过程装备风险监控技术规范.pdf
- DB15_T 4192-2025 旱地谷子膜侧机械精量穴播栽培技术规程.pdf
- 航空发动机叶片微束等离子堆焊转角焊缝模型研究.docx
- 轨道交通三维视景模型的建模与控制.docx
- DB15_T 4178.9-2025 奶山羊智慧牧场 第9部分:精准饲喂.pdf
- DB11_T 2493-2025 餐饮服务单位使用丙类液体燃料消防安全管理规范.pdf
- DB15_T 4170.2-2025 阴山沿麓主要作物节水减肥技术规程 第2部分:玉米.pdf
- DB11_T 2474-2025 家禽低豆粕饲料配备与应用技术规范.pdf
- DB15_T 822-2025 在用电梯安全评估规则.pdf
- DB50_T 1910-2025 果园间作茎瘤芥栽培技术规程.pdf
原创力文档

文档评论(0)