- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[第七章已校
第七章 Oracle 10g PL/SQL程序设计
SQL标准的确定使得大多数数据库厂家纷纷采用SQL语言作为其数据库操作语言,不同厂家又在SQL标准的基础上进行不同程度的扩充,形成各自的数据库语言。Oracle公司在标准SQL语言的基础上发展了自己的PL/SQL(Procedural Language/SQL,过程化SQL语言)语言,将变量、控制结构、过程和函数等结构化程序设计要素引入了SQL语言中,这样就能够编制比较复杂的SQL程序了,利用PL/SQL语言编写的程序也称为PL/SQL程序块。
7.1 PL/SQL程序设计基础
7.1.1 PL/SQL程序结构
和所有过程化程序设计语言一样,PL/SQL也是一种模块化结构的语言,它的大体结构如下:
DECLARE
--定义部份:变量、常量、游标、自定义数据类型等说明
BEGIN
--执行部份:PL/SQL语句。
EXCEPTION
--异常处理部份,异常的处理请参考7.4节
END;
7.1.2 运算符
运算符用来执行列、常量或变量间的数学运算和比较操作。PL/SQL支持的运算符分算术运算符、比较运算符、逻辑运算符、字符串连接运算符、赋值运算符等。
1.算术运算符
算术运算符用于执行数字型表达式的算术运算,PL/SQL 支持的算术运算符包括:
+:加。
-:减。
*:乘。
/:除。
MOD:取模。
2.比较运算符
比较运算符用来比较两个表达式的值是否相同。PL/SQL支持的比较运算符包括:
大于。
= 等于。
小于。
= 大于等于。
= 小于等于。
!= 不等于。
like 类似于
between 在……之间。
in在……之中
注:关系型表达式运算符两边的表达式的数据类型必须一致
3.逻辑运算符
逻辑运算符用于测试条件是否为真,它与比较运算符一样,根据测试结果返回布尔值TRUE、FALSE。逻辑运算符有以下几种:
AND。
OR。
NOT。
4.字符串连接符
“||”可以实现字符串之间的连接操作。PL/SQL中,字符串之间的其他操作通过字符串函数实现。
例7-1 下列表达式用字符串连接符实现两字符串间的连接。
SELECT abc || 123 FROM dual
其计算结果为abc123。
注:dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录
5.赋值运算符
PL/SQL中的赋值运算符为等号(:=),它将表达式的值赋给一个变量。例如:
DECLARE
x INT;
BEGIN
x := 100 + 50;
dbms_output.put_line(x);
END;
注:在SQL*PLUS中使用dbms_output.put_line来输出变量的值,需要执行SET SERVEROUTPUT ON命令打开环境变量serveroutput 。
7.1.3 变量与常量
变量和参数是PL/SQL语句之间传递数据的两种途径,量常用在批处理脚本程序内的PL/SQ语句之间传递数据,而参数则用在存储过程和执行该存储过程的批处理脚本程序之间传递数据。
1.变量声明
变量是由用户声明并可赋值的实体。PL/SQL在DECLARE部份中声明变量, 语法格式为:
变量名 数据类型;
例如:DECLARE
xx CHAR(10) --定义长度为10的字符变量xx。
2.变量赋值
变量声明后,我们可以按下面语法为变量赋值:
变量名 := 表达式;
例如:
DECLARE
x NUMBER; --声明
BEGIN
x := 15; --赋值
dbms_output.put_line(x);
END;
3.定义常量
常量名 CONSTANT 数据类型 := 值
例如:
DECLARE
PI CONSTANT NUMBER := 3.1415926; --定义一个常量PI
7.1.4 定义数据类型
定义数据类型的语法格式为:
TYPE 数据类型名 IS 数据类型
Oracle允许用户定义三种数据类型:RECORD(记录) 、TABLE(表)、VARRAY(变长数组)
定义RECORD的语法为:
TYPE 数据类型名 IS RECORD(
成员变量定义
);
例如,下面是定义一个记录类型的自定义数据类型student
DECLARE
TYPE student IS RECORD(
name VARCHAR2(10), ----注意成员变量定义是用豆号结束.
sex CHAR(2) ,
age INT
);
stu1 student; --定义student类型的变量。
BEGIN
stu1.name := test; --为记录类型变量的成员赋值。
end;
7.2流程控制语句
您可能关注的文档
- [伯牙绝弦说课稿教学设计自评稿.doc
- [伴性遗传教案.doc
- [第一章管理与管理学排版0128.doc
- [伴性遗传说课稿20120519.doc
- [HSE手册-水手.docx
- [HR自由交流群内必备知识.doc
- [低压配电箱招标文件.doc
- [HTC手机官方解锁通用方法.docx
- [低年级写字教学的研究与实践.doc
- [HSE管理手册第二版.doc
- 半导体材料性能提升技术突破与应用案例分析报告.docx
- 半导体设备国产化政策支持下的关键技术突破与应用前景报告.docx
- 剧本杀市场2025年区域扩张策略研究报告.docx
- 剧本杀行业2025人才培训体系构建中的市场需求与供给分析.docx
- 剧本杀行业2025年人才培训行业人才培养模式创新与探索.docx
- 剧本杀行业2025年内容创作人才需求报告.docx
- 剧本杀行业2025年区域市场区域剧本市场消费者满意度与市场竞争力研究报告.docx
- 剧本杀市场2025年区域竞争态势下的区域合作策略分析报告.docx
- 剧本杀行业2025人才培训与行业人才培养模式创新.docx
- 剧本杀行业剧本创作人才心理素质培养报告.docx
最近下载
- GB50150-2016 电气装置安装工程 电气设备交接试验标准 (2).pdf VIP
- GBT51121-2015 风力发电工程施工与验收规范.doc VIP
- 抗凝剂皮下注射技术临床实践指南(2024版)解读 2PPT课件.pptx VIP
- 腰椎解剖应用.ppt VIP
- 人教版高一数学上册《第一单元集合》同步练习题及答案.pdf VIP
- 紫外可见分光光度计招标文件.doc VIP
- 《Android-Jetpack开发-原理解析与应用实战》读书笔记思维导图.pptx VIP
- DB3706_T 74-2021 西洋梨生产技术规程.pdf
- 【精选】ICAO附件14.pdf
- JEP122G 半导体器件失效机理和模型.pdf VIP
文档评论(0)