- 1、本文档共49页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 Oracle 10g PL/SQL程序设计 7.1 PL/SQL程序设计基础 7.2 流程控制语句 7.3 游标 7.4 异常处理 7.5 过程与函数 7.6 触发器 7.1 PL/SQL程序设计基础 7.1.1 PL/SQL程序结构 ,PL/SQL也是一种模块化结构的语言,它的大体结构如下: DECLARE --定义部分:变量、常量、游标、自定义数据类型等说明。 BEGIN --执行部分:PL/SQL语句。 EXCEPTION --异常处理部分,异常的处理请参考7.4节。 END; 7.1.2 运算符 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 变量与常 1.变量声明 PL/SQL在DECLARE部分中声明变量,语法格式为: 变量名 数据类型 2.变量赋值 变量声明后,可以按下面语法为变量赋值: 变量名 := 表达式; 7.1.4 定义数据类型 定义数据类型的语法格式为: TYPE 数据类型名 IS 数据类型 Oracle允许用户定义3种数据类型:RECORD(记录)、TABLE(表)、VARRAY(变长数组) 定义RECORD的语法为: TYPE 数据类型名 IS RECORD( 成员变量定义); 其他类型的定义请参考ORACLE的帮助文档. 7.2 流程控制语句 流程控制语句用于控制PL/SQL语句、语句块、存储过程或函数的执行流程 7.2.1 条件语句 1.IF…ELSE语句语法格式为: IF 条件表达式 THEN SQL语句|语句块 [ELSE SQL语句|语句块] END IF; 2.IF…ELSIF…ELSE语句语法格式 IF 条件表达式 THEN SQL语句|语句块 ELSIF 条件表达式 THEN SQL语句|语句块 [ELSE SQL语句|语句块] END IF; 3.CASE语句 CASE 条件选择表达式 WHEN 表达式1 THEN PL/SQL语句块1 WHEN 表达式2 THEN PL/SQL语句块2 … WHEN 表达式N THEN PL/SQL语句块N ELSE PL/SQL语句块N+1 7.2.2 循环语句 1.基本循环 LOOP PL/SQL语句|语句块 EXIT [WHEN 条件表达式] END LOOP; 2.WHILE循环 WHILE 条件表达式 LOOP PL/SQL语句|语句块 END LOOP 功能:当条件表达式为真时,重复执行其中的PL/SQL语句或语句块。 3.FOR循环 FOR 循环变量 IN [REVERSE] 初值..终值 LOOP PL/SQL语句|语句块 –循环体 END LOOP 默认情况下,当使用FOR循环时,每次循环变量会自动加一,如果指定[REVERSE]选项,那么每次循环变量会自动减一。循环变量必须是NUMBER或INTEGER类型。 7.2.3 RETURN语句与NULL语句
文档评论(0)