版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Oracle PL/SQL 根底培训目录 课程引见 根底知识 循环执行 条件转移 游标与数据 存放对象 内置函数 异常处置课程引见教程概述本教程假设读者已了解关系型数据库根本原理,明白表、视图、主键、索引、外键、约束、关联等根本概念,熟习Oracle SQL本教程定位是Oracle PL/SQL简明、适用教程,偏向于根本PL/SQL开发,假设进一步学习PL/SQL高级功能,请参阅其他教程或书籍文档课程目的是完成课程后可进展大部分Oracle PL/SQL开发(编写)适用对象学习过Oracle SQL,未运用过Oracle PL/SQL的读者运用过SQL Server的Transact-SQL或
2、其他数据库版本的T-SQL,未运用过Oracle PL/SQL的读者目录 课程引见 根底知识 循环执行 条件转移 游标与数据 存放对象 内置函数 异常处置根底知识-PL/SQL引见PL/SQL概述PL/SQL是Procedural Language extensions to SQL简写将过程构造与SQL无缝集成,实现数据构造和算法,最终实现对数据库的数据处置和其他相关功能PL/SQL是块构造化言语,块是PL/SQL根本单元PL/SQL扩展变量和类型条件语句循环语句根底知识-Hello World参考代码目录 课程引见 根底知识 循环执行 条件转移 游标与数据 存放对象 内置函数 异常处置条件
3、转移IF THENIF THEN ELSEIF THEN ELSIF条件转移-IF THEN语法IF 条件断定为真 THEN 可执行语句块END IF;例如条件转移-IF THEN例如条件转移-IF THEN ELSE语法IF 条件断定为真 THEN 可执行语句块1ELSE 可执行语句块2END IF;例如条件转移-IF THEN ELSE例如条件转移-IF THEN ELSIF语法IF 条件断定为真 THEN 可执行语句块1ELSIF 可执行语句块2.ELSIF 可执行语句块NEND IF;例如目录 课程引见 根底知识 循环执行 条件转移 游标与数据 存放对象 内置函数 异常处置循环执行LO
4、OPWHILE LOOPFOR LOOP循环执行-LOOP语法LOOP 可执行语句块EXIT WHEN 条件断定END LOOP;阐明LOOP是无限循环,可运用EXIT显式退出LOOP循环EXIT有两种格式:IF.THEN EXIT END IF和EXIT WHENEXIT语句必需放在循环内EXIT可以出现多次,第一个EXIT执行后,马上退出循环EXIT只能退出循环,不能退出PL/SQL块,要退出PL/SQL块,运用RETURN;循环执行-LOOP例如循环执行-LOOP例如循环执行-WHILE LOOP语法WHILE 条件断定 LOOP 可执行语句块END LOOP;阐明每次执行“可执行语句块
5、前,先判别“条件断定能否为TRUE,因此循环有能够一次也不执行假设“条件断定不断为TRUE,那么循环无限进展下去,留意在“可执行语句部分设置“条件断定可用EXIT显式退出当前循环,EXIT有两种格式:IF.THEN EXIT END IF和EXIT WHENEXIT语句必需放在循环内EXIT可以出现多次,第一个EXIT执行后,马上退出循环EXIT只能退出循环,不能退出PL/SQL块,要退出PL/SQL块,运用RETURN;循环执行-WHILE LOOP例如循环执行-FOR LOOP语法FOR 计数器变量 IN REVERSE 低界值.高界值 LOOP 可执行语句块END LOOP;阐明是每次执
6、行“可执行语句块前,先判别“条件断定能否为TRUE,因此循环有能够一次也不执行可用EXIT显式退出当前循环,EXIT有两种格式:IF.THEN EXIT END IF和EXIT WHENEXIT语句必需放在循环内EXIT可以出现多次,第一个EXIT执行后,马上退出循环EXIT只能退出循环,不能退出PL/SQL块,要退出PL/SQL块,运用RETURN;循环执行-FOR LOOP例如目录 课程引见 根底知识 循环执行 条件转移 游标与数据 存放对象 内置函数 异常处置游标与数据概念分类属性动作声明游标运用游标隐式游标SELECT INTO游标与数据-游标概念概念游标是一个机制,经过这个机制可以给
7、一个SQL语句命名,并操作该SQL前往的数据或者运用该SQL前往的数据操作其他的数据分类显式游标:显式声明游标,且由代码管理游标生命周期隐式游标:非显式声明游标,由系统管理游标生命周期游标与数据-属性动作属性清单操作动作游标与数据-声明游标语法例如声明游标指向一切部门声明游标指向一切参数指定部门的员工游标与数据-运用游标单重循环LOOP.END LOOPWHILE.LOOP.END LOOPFOR.LOOP.END LOOP游标与数据-运用游标-LOOP.END LOOP例如游标与数据-运用游标-WHILE.LOOP.END LOOP例如游标与数据-运用游标-FOR.LOOP.END LOOP
8、例如游标与数据-运用游标多重循环FOR.LOOP.END LOOP游标与数据-运用游标-FOR.LOOP.END LOOP例如游标与数据-隐式游标SELECT INTO背景从数据库中获取数据到变量时,假设相关SQL只前往低于1条记录,运用显式游标过于费事,Oracle提供SELECT INTO快速实现改功能。一切DML语句执行时创建一个隐式游标,所以SELECT INTO也是游标,不过其创建和翻开、封锁全部由ORACLE自动完成语法游标与数据-隐式游标SELECT INTO例如游标与数据-隐式游标SELECT INTO序列取序列值,序列是一种数据库对象,就像一个自增长的计数器可以创建时指定初始
9、值和最大值,以及增长步长(均匀增量)序列有currentVal和nextVal属性分别是序列当前值和序列下一值可经过s_seq_name.currentVal和s_seq_name.nextVal获取值每次调用nextVal,序列就会自动按设定步长增长语法游标与数据-隐式游标SELECT INTO例如隐式游标与显式游标的区别显式游标 1.由用户显式声明 cursor 2.游标将指向活动集中的当前行 3.控制显式游标分为三个步骤OpenFetch 提取 Close隐式游标 由Oracle数据库自动创建,称号是(SQL) ,主要用途是可以前往一个操作能否胜利或失败. 1.有Oracle在内部声明,
10、由系统管理 2.用于处置 -DML语句 -留意只能用于DML语句哦。 -前往单行的查询目录 课程引见 根底知识 循环执行 条件转移 游标与数据 存放对象 内置函数 异常处置异常处置什么是异常预定义异常自定义异常处置异常关键字OTHERS编译指令EXCEPTION_INIT异常处置-什么是异常概述PL/SQL运转时有能够会发生错误或警告,如除数为零,没有找到数据,DML操作违反数据库对象约束等,这种运转时错误就称为异常,异常是一种错误形状ORACLE将一切知底层错误用一系列错误代码标志,并对应相应错误信息描画ORACLE将部分知底层SQL或者硬件错误,封装成异常,并提供异常处置机制处置异常对于业
11、务逻辑上的错误,需求用户自定义异常来描画和控制异常机制实现程序主逻辑和错误处置逻辑分别,使程序可读性和强壮性得到进一步提高分类预定义异常:由Oracle数据库自带,在运用时不用先声明自定义异常:由开发人员自定义,在运用前需求先声明异常处置-预定义异常清单异常处置-自定义异常概述将业务逻辑错误封装成异常,这种异常就是自定义异常自定义异常在运用前必需先声明,可在PL/SQL代码块声明部分和包中声明自定义异常异常不是变量,声明不能赋值异常作用域和变量不断,在一个块和其子块可见,子块声明与父块同名异常,会覆盖父块声明的异常语法异常处置-处置异常例如自定义异常异常处置-关键字OTHERS用途代表未知异常
12、在无法预测或不想指明要捕获的异常类型时运用一个PL/SQL代码块假设有多个异常处置语句,带OTHERS的异常处置语句必需放在最后异常处置-处置异常-异常捕获与传播例如异常处置部分触发的异常目录 课程引见 根底知识 循环执行 条件转移 游标与数据 存放对象 内置函数 异常处置存放对象过程函数包触发器存放对象-过程什么是过程声明过程调用过程删除过程存放对象-过程-什么是过程概念过程是特殊的PL/SQL代码块,在普通代码块根底上加上过程声明语句Procedure.再加上参数,代码块就变为过程过程可以编译到数据库中,编译后自动保管在数据库中过程可以经过称号和包、schema等限定词被其他代码调用过程参
13、数有IN/OUT/IN OUT三种类型,其中IN类型可以被过程体援用,但不能改写值;OUT类型不可被过程体援用,但可改写值;IN OUT 既可以被过程体援用,又可以改写值存放对象-过程-声明过程语法是存放对象-过程-声明过程例如新建一个部门,称号由参数指定存放对象-过程-声明过程例如将参数1指定的部门,工资低于参数2指定的工资,添加参数3,并前往能否更新胜利,以及相应的提示信息(续)存放对象-过程-调用过程方法位置标志法带名标志法存放对象-过程-调用过程例如位置标志法存放对象-过程-调用过程例如带名标志法存放对象-过程-删除过程语法DROP PROCEDURE procedure_name;例
14、如DROP PROCEDURE p_copy_dept_and_emp;存放对象-函数什么是函数声明函数调用函数删除函数存放对象-函数-什么是函数概念过程是特殊的PL/SQL代码块,在普通代码块根底上加上过程声明语句Function. Return Type再加上参数,代码块就变为函数函数可以编译到数据库中,编译后自动保管在数据库中函数可以经过称号和包、schema等限定词被其他代码调用函数参数有IN/OUT/IN OUT三种类型,其中IN类型可以被函数体援用,但不能改写值;OUT类型不可被函数体援用,但可改写值;IN OUT 既可以被函数体援用,又可以改写值函数有前往值,只能前往一个值存放对
15、象-函数语法存放对象-函数例如将参数1指定的部门的一切员工姓名衔接起来,中间用逗号隔开存放对象-函数-调用函数方法位置标志法带名标志法存放对象-函数-调用函数例如位置标志法存放对象-函数-调用函数例如带名标志法存放对象-函数-删除函数语法DROP FUNCTION procedure_name;例如DROP FUNCTION fn_get_emp_name;存放对象-包什么是包声明包调用包删除包存放对象-包-什么是包概念包是是特殊的PL/SQL代码块,是过程、函数、变量的容器包可以编译到数据库中,编译后自动保管在数据库中可以经过包名、schema等限定词调用包中的其他数据库对象包分包头和包体,
16、经过PACKAGE和PACKAGE BODY关键词分别声明包头和包体存放对象-包头语法存放对象-包体例如存放对象-包-声明包例如包头存放对象-包-调用包对象方法位置标志法带名标志法存放对象-包-调用函数例如位置标志法存放对象-包-调用函数例如带名标志法存放对象-包-删除包语法DROP PACKAGE package_name;例如DROP PACKAGE PKG_SQL_APP;目录 课程引见 根底知识 循环执行 条件转移 游标与数据 存放对象 内置函数 异常处置内置函数概念内置函数是Oracle提供的、预定义好的函数内置函数不用声明或援用包就可以运用分类多行函数,对查询前往的数据的多行起作用
17、,多行函数在SELECT语句中,配合GROUP BY一同运用单行函数,对查询前往的数据的每一行起作用,单行函数也可以在PL/SQL中直接运用,将函数前往值赋值给变量内置函数多行函数COUNTAVGSUMMINMAX内置函数单行函数数值函数字符函数转换函数日期函数杂项函数内置函数-单行函数数值函数ABSSIGINCEILFLOORROUNDTRUNCMOD内置函数-单行函数-数值函数-ABS用途前往绝对值语法ABS(number_param)内置函数-单行函数-数值函数-TO_NUMBER例如内置函数-单行函数字符函数LENGTHLENGTHBLOWERUPPERINSTRSUBSTRREPLA
18、CELPADRPADLTRIMRTRIM内置函数-单行函数-字符函数-LENGTH用途前往字符长度语法LENGTH(string_param)内置函数-单行函数-字符函数-LENGTH例如内置函数-单行函数-字符函数-LENGTHB用途前往字符按字节计算长度语法LENGTHB(string_param)内置函数-单行函数-字符函数-LENGTHB例如内置函数-单行函数-字符函数-LOWER用途将字符转为小写,参数字符串中可包含非字符,如数字,特殊符号等语法LOWER(string_param)内置函数-单行函数-字符函数-LOWER例如内置函数-单行函数-字符函数-UPPER用途将字符转为大写
19、语法LOWER(string_param)内置函数-单行函数-字符函数-UPPER例如内置函数-单行函数转换函数TO_NUMBERTO_CHARTO_DATE内置函数-单行函数-数值函数-TO_NUMBER用途将字符转为数字型语法TO_NUMBER(param)内置函数-单行函数-数值函数-TO_NUMBER例如内置函数-单行函数-数值函数-TO_CHAR用途将数字转为字符将日期类转为字符型,按一定格式语法TO_CHAR(string_param)TO_CHAR(date_param,format,nlsparams)内置函数-单行函数-数值函数-TO_CHAR例如内置函数-单行函数-数值函数-TO_DATE用途将字符类转为日期型,按一定格式语法TO_DATE(string_paramformat,nls_params)内置函数-单行函数-数值函数-TO_DATE例如内置函数-单行函数日期函数SYSDATE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第二十四章 相似三角形(11个知识归纳)
- 1-3单元古诗文默写训练-2022-2023学年七年级语文上册知识梳理与能力训练
- 临高县新盈中学2024-2025学年高三上学期期中考试试卷
- 黑龙江省齐齐哈尔市富裕县益海学校2024-2025学年八年级上学期期中地理试题(含答案)
- 广东省深圳市盟校联盟2024-2025学年高一上学期11月期中物理试题(含解析)
- 一元二次不等式中的含参问题(原卷版)-2024-2025学年人教版高一数学压轴题攻略
- 2024年四川省公务员考试《行测》真题及答案解析
- 工厂整体转让合同样本
- 2024高考物理一轮复习:受力分析共点力平衡(练习)(学生版+解析)
- 有关产品销售合同模板汇编
- 新高考教学质量考核方案
- 中华民族共同体概论课件第六讲五胡入华与中华民族大交融(魏晋南北朝)
- 山西省太原市2023-2024学年五年级上学期期中数学试卷
- 2024年广东佛山市三水海江昇平建设工程有限公司招聘笔试参考题库附带答案详解
- 4.1DNA是主要的遗传物质课件高一下学期生物人教版必修2
- 人民群众是历史的创造者
- 六年级上册数学常考易错应用题(100道)
- (高清版)DZT 0208-2020 矿产地质勘查规范 金属砂矿类
- 《堂堂正正做君子》课件
- 肺功能检查及其临床应用幻灯课件
- 《疆喀什介绍》课件
评论
0/150
提交评论