sql属于第三代语言, 也就是说通过该语言能告诉操作者能做什么, 而无法告诉操作者如何做, 也就是屏蔽了系统内部的数据结构和算法
pl sql属于第四代语言, 它通过在sql的基础上引入变量, 控制语句, 过程和函数, 使得它除了sql的功能之外, 还更加灵活.
plsql的大致结构如下:
引用
DECLARE
变量声明
BEGIN
执行代码块
EXCEPTION
异常执行代码块
END
plsql也就是"三段式"的结构(声明, 执行代码快, 异常处理块), 其中只有执行代码块是必须的,其他两个部分是可选的.
pl sql中的变量可以自定义, 一些复杂的数据结构,比如记录类型, 表类型之类的
游标是用来处理使用select语句从数据库中检索到的多行记录的工具, 通过游标可以多一组记录集逐行进行处理, 对数据的统计和分析来说游标非常有用
过程和函数(统称为子程序)是经过编译的程序代码块,二者的区别是, 函数有返回值, 过程没有
为了方便管理, 可以将子程序, 变量以及变量类型组成包, 包包括两部分:说明和包体, 跟jdk有些类似, oralce也提供了一些内置的package, 一般都是以DBMS_打头用来方便在我们的plsql中调用.
一般的程序设计语言的基本单位是语句, 但是plsql的基本单位是语句块, 也就是declare ... begin ... end之间的部分.可以给语句块取一个名字, 也可以没有名字(匿名语句块), declare只是用来提供变量声明的, 如果没有变量声明则可以直接以begin打头.因为代码的执行部分是放在begin...end;(后面必须加分号)之间的.
用户自定义类型, 可以这样理解自定义类型, 自定义类型是基本类型的一个子集, 因此又称之为基本类型的子类型, 如果是基于数据库表中的某个字段的类型,可以这样写:SUBTYPE ID_num IS emp.empno%TYPE, 但是它只能集成列的尺寸约束, 不会集成象not null之类的约束.
在plsql中关于null有几点需要注意:
和包含null的值进行比较, 得到的结果总是null;
将逻辑操作符not应用一个null值上, 其结果也为null;
case...when条件选择语句中如果没有找到匹配的条件, 返回的结果是null, 而且null也不能做为when中的比较结果来进行匹配, 必须使用is null来测试结果;
在if...then...else条件语句中, 如果为false或者null会执行else中的语句;
零长度的字符串被看作null;
在使用||串接字符串时, null将被忽略;
plsql与其他的语言相比, 多了一个goto和null语句, 使用goto有很多限制, 不用多说, null语句表示什么也不做.
161 过程与函数
180 包
package是plsql代码块的一种组织形式, 它分包规范和包体, 只有子程序和游标需要在包体部分定义, 要想包体中定义的子程序和游标在包之外也能使用, 必须在包规范中进行声明
218 游标
游标可以用来增强sql语句的功能, 有时候sql无法搞定的时候, 我们就可以借助游标来对从数据库中取出的表进行处理
对于显式游标的处理可以概括为四个步骤:声明游标,打开游标, 提取游标和关闭游标
245 触发器
...
分享到:
相关推荐
Oacle DBA的PL SQL学习笔记
pl/sql笔记pl/sql笔记pl/sql笔记pl/sql笔记pl/sql笔记pl/sql笔记pl/sql笔记
oracle PL-SQL 学习笔记 oracle PL-SQL 学习笔记
PL/SQL从入门到精通学习帮助手册,PL/SQL简介,PL/SQL操作,存储过程,触发器等
pl/sql数据库学习笔记,包含一些基础知识,和案例代码
oracle PL-SQL 学习笔记 很好的总结
一个很好的学习 pl/sql的入门文章 作者总结的非常好 非常适合入门学者
PL/SQL 块中只能直接嵌入SELECT,DML(INSERT,UPDATE,DELETE)以及事务 控制语句(COMMIT,ROLLBACK,SAVEPOINT), 而不能直接嵌入DDL语句 (CREATE,ALTER,DROP) 和DCL语句(GRANT,REVOKE)
Oracle的学习笔记,很有用的啊!里面有sqlplus,PL/SQL.对编程的朋友很有用
PL/SQL学习教程,包括相应的代码以及相关的学习笔记,适合初学者快速入门。
声明: 转载 <来自于itpub论坛网友共享了自己的笔记>
声明: 转载 <来自于itpub论坛网友共享了自己的笔记>
声明: 转载 <来自于itpub论坛网友共享了自己的笔记>
声明: 转载 <来自于itpub论坛网友共享了自己的笔记>
IBM的PL1培训笔记.
本人学习PL_SQL的个人学习笔记,也许会对一些入门学者有用吧,非初学者就不必看了。。。
通过学习本书,读者不仅可以掌握Oracle常用工具Oracle Universal Installer、Net Comfiguration Assistant、SQL Developer、SQL*Plus的作用及使用方法,而且可以掌握SQL语句和PL/SQL的各种基础知识和高级特征(记录...