细说PL/SQL那点事儿
人生总是在匆匆忙忙中做选择,不妨停下你的脚步,聆听PL/SQL的心跳。本专栏带你走进PL/SQL,细说其中的奥秘。
chiclewu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
PL/SQL游标使用详解
每当在PL/SQL中执行一个SQL语时,Oracle数据库都会为这个语句分一个上下文区域(Context Area)来处理所必需的信息,其中包括语句处理的行数,一个指向语句被分析以后的表示形式的指针以及查询的结果集。游标是指向上下文区域的句柄或指针,PL/SQL通过游标可以控制或处理上下文区域。如果按照游标是否绑定到一个专门的查询语句来划分,可以分为静态游标和动态游标。其中静态游标又分为:隐式游标和显示游标;动态游标分为:强类型和弱类型。1.隐式游标每当我们执行一个DML语句(包括INSERT,UP原创 2013-12-23 00:01:29 · 5404 阅读 · 0 评论 -
Oracle rank和dense_rank排名函数
1.rank函数rank计算一组值的排名,返回数字类型。排名可能是不连续。如果有5人,其中有2个人排名第一,则rank返回的排名结果为:1 1 3 4 5。作为一个聚合函数,返回虚拟行在样表中的排名。作为一个解析函数,返回每一个的排名。1.1聚合函数语法 1.2解析函数语法 1.3聚合函数的例子计算假定薪水为2000的员工在样表中的排名。SQL> s原创 2013-12-10 23:49:50 · 10212 阅读 · 0 评论 -
如何使用动态SQL语句?
这里只介绍动态SQL的使用。关于动态SQL语句的语法,参见:http://blog.youkuaiyun.com/chiclewu/article/details/160971331.什么是时候需要使用动态SQL?SQL文本在编译时是未知的。例如,SELECT语句包含的标识符(如表名)在编译时是未知的,或者WHERE子句的条件数量在编译时是未知。静态SQL不支持例如原创 2013-12-03 22:21:11 · 5813 阅读 · 0 评论 -
动态SQL语句的语法
动态SQL是在运行时生成和执行SQL语句的编程方法。动态是和静态相对而言的。静态SQL指的是在代码编译时刻就已经包含在代码中的那些已经充分明确的固定的SQL语句。PL/SQL提供了两种方式来编写动态SQL:本地动态SQL,一个PL/SQL语言结构用于构建和指定动态SQL语句。DBMS_SQL包,一个API用户构建、执行和描述动态SQL语句。本地动态SQL代码比同等代码使用DBM原创 2013-11-14 22:16:43 · 15717 阅读 · 0 评论 -
PL/SQL批处理语句(BULK COLLECT子句和FORALL语句)
Oracle为PL/SQL中的SQL相关功能提供了FORALL语句和BULK COLLECT子句,显著的增强了SQL相关功能。这两个语句一起被称作PL/SQL的批处理语句。Oracle为什么要提供这两个语句呢?我们首先了解一下PL/SQL的引擎。该引擎可以安装在数据库,或者应用开发工具上,例如Oracle Froms。当PL/SQL运行引擎执行一个代码块时,引擎本身只会处理过程语句,而SQL语句是发送给SQL引擎执行。SQL语句的执行时是由数据库的SQL引擎负责,再将执行结果返回给PL/SQL引擎。原创 2013-12-08 21:46:40 · 5850 阅读 · 0 评论 -
Oracle集合类型
所谓集合是一种类似于列表或者一维数组的数据结构。PL/SQL提供了三种集合类型:关联数据组(索引表),嵌套表和VARRAY(可变长数组)。1.关联数组(索引表)关联数组(也称为索引表)是一组键值对。每个密钥都是唯一的,并且被用于定位相应的值。键可以是整数或字符串。只能用于PL/SQL环境。 2.嵌套表从概念上讲,嵌套表像一个元素数量任意的一维数组。原创 2013-12-12 14:26:54 · 5922 阅读 · 0 评论
分享