- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Oracle10gPLSQL编程讲义
PL/SQL程序设计
主要内容:PL/SQL 语言的基本特征、PL/SQL程序的结构、PL/SQL语言的控制结构、游标(cursor)编程、错误处理、存储过程和函数、创建包(Package)、触发器(Trigger)。
PL/SQL 语言的基本特征
什么是PL/SQL?
PL/SQL是 Procedure Language Structured Query Language 的缩写。
SQL SERVER:Transaction-SQL。
PL/SQL 可分为两种:数据库PL/SQL和工具PL/SQL。两者的编程非常相似。都具有编程结构、语法和逻辑机制。
主要介绍数据库PL/SQL内容。
工具PL/SQL用于Oracle的客户端开发工具。工具PL/SQL另外还增加了用于支持工具(如ORACLE Forms)的句法,如:在窗体上设置按钮等。
Oracle的客户端开发工具Oracle iDS(Developer Studio)Release 2 (10.2)包括的软件:
Oracle10g JDeveloper -JAVA开发工具
Oracle10g Forms Developer -窗体开发
Oracle10g Designer -数据库工具
Oracle10g Software Configuration Manager -软件配置
Oracle10g Reports Developer -报表开发
Oracle10g Discoverer Administrator
Oracle10g Warehouse Builder -数据仓库
Oracle10g Business Intelligence Beans -商业智能
2. PL/SQL 语言的特征
支持SQL语言、支持面向对象编程、可移植、与Oracle集成。
PL/SQL程序不区分大小写。
字符串数据区分大小写。
3. PL/SQL 可用的SQL语句
在PL/SQL中可以使用的SQL语句有:
INSERT,UPDATE,DELETE,SELECT INTO,COMMIT,ROLLBACK,SAVEPOINT。
重点:在 PL/SQL中不能有SELECT语句,只能用 SELECT INTO 语句。
提示:在 PL/SQL中只能用 SQL语句中的 DML 部分,不能用 DDL 部分,如果要在PL/SQL中使用DDL(如CREATE TABLE 等)的话,只能以动态的方式来使用。
PL/SQL程序的结构
PL/SQL程序的块结构
PL/SQL程序由三个部分组成,即声明部分、执行部分、异常处理部分。
PL/SQL块的结构如下:
[DECLARE
/* 声明部分: 在此声明PL/SQL用到的变量,类型及游标,以及局部的存储过程和函数 */]
BEGIN
/* 执行部分: 过程及SQL 语句 , 即程序的主要部分 */
[EXCEPTION
/* 执行异常部分: 错误处理 */]
END;
其中 执行部分是必须的。
一个PL/SQL程序实例:
DECLARE
Qty on hand NUMBER(5);
BEGIN
SELECT quantity INTO qty on hand FROM inventory
WHERE product =’TENNIS RACKET’;
IF qty on hand O THEN
UPDATE inventory SET quantity = quantity - 1
WHERE product =’ TENNIS RACKET’;
INSERT INTO purchase record
VALUES (’Tennis racket purchased’, SYSDATE);
ELSE
INSERT INTO purchase record
VALUES (’Out of tennis rackets’, SYSDATE);
END IF;
COMMIT;
END;
演示一个例子。
PL/SQL块可以分为两类:
未命名块:动态构造,只能执行一次。
命名块:存储在数据库中的存储过程、函数、触发器以及包等。
标识符
PL/SQL程序设计中的标识符定义与SQL 的标识符定义的要求相同。要求和限制有:
标识
文档评论(0)