第6课 pl sql语法.docVIP

  • 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,

文档评论(0)

1亿VIP精品文档

相关文档