Oracle知识之集合和成员函数_第1页
Oracle知识之集合和成员函数_第2页
Oracle知识之集合和成员函数_第3页
Oracle知识之集合和成员函数_第4页
Oracle知识之集合和成员函数_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

集合和成员函数第十章回顾在上一章中,我们讨论了数据库触发器内置程序包2目标本章讨论PL/SQL表和记录嵌套表和可变数组成员函数和过程3PL/SQL表和记录9-1PL/SQL表在PL/SQL块中临时使用、像数组一样的对象包含一列和一个主键不能对列和主键进行命名列可以是任何标量数据类型主键必须是binary_integer类型大小没有限制4PL/SQL表和记录9-2声明PL/SQL表在块、子程序或程序包的声明部分进行声明所包含的步骤定义表的类型TYPEtypenameISTABLEOFcol_defINDEXBYBINARY_INTEGER;声明该类型的一个PL/SQL表Tablenametypename;

其中typename

是类型名。5PL/SQL表和记录9-3引用PL/SQL表使用主键值引用PL/SQL表中的行tablename(key_value)

其中,tablename是表名,key_value是键值。赋值要给某行赋值,请使用tablename(key_value):=expression;

其中tablename是表名,key_value是键值,expression是表达式。6PL/SQL表和记录9-4管理PL/SQL表使用Insert语句从表中向数据库中添加数据使用Delete语句从表中删除数据7PL/SQL表和记录9-5记录存储在字段中的一组相关数据项字段有自己的名称和数据类型可以使用%ROWTYPE来声明记录,它表示表的行优点用户定义的记录可以有任意数目的不同

数据类型的列8PL/SQL表和记录9-6声明记录首先,定义记录类型TYPEtypenameISRECORD

(列定义.…);

其中,typename

是类型名。

声明一个该类型的记录作为标识符recordtypetypename;

其中recordtype

是记录类型,而typename

是类型名。%type和%rowtype可以用来指定列的数据类型。NOTNULL列必须在声明部分进行初始化。9PL/SQL表和记录9-7引用记录引用字段的语法是recordname.columnname

用于给列赋值的语法是recordname.columnname:=expression;

其中,recordname

是记录名,而columnname

是列名,expression

是表达式。10PL/SQL表和和记录9-8批量绑定绑定-对PL/SQL变量的赋值值批量绑定-一次绑定一一整个集合合提高DML语句的性能能FORALL关键字用于于要在发送送到SQL引擎之前对对输入集合合进行批量量绑定11PL/SQL表和和记录9-9BULKCOLLECT子句通知SQL引擎在将输输出集合返返回到PL/SQL引擎之前对对它们进行行批量绑定定用于下列子子句SELECTINTOFETCHINTORETURNINGINTO12嵌套表和可可变数组11-1嵌套表嵌套在另一一个表中的的表可以直接使使用SQL进行操纵通过添加额额外的集合合方法来扩扩展索引检检索表的功功能声明嵌套表表用来声明的的语法是TYPEtablenameISTABLEOFtabletype;其中,tablename是表名,而而tabletype是表类型。。13嵌套表和可可变数组11-2嵌套表声明时初始始化为NULL使用构造函函数来完成成初始化构造函数跟跟表类型同同名14嵌套表和可可变数组11-3创建嵌套表表所包含的的步骤使用CREATETYPE语句来创建建类型使用ASTABLEOF子句基于此此类型创建建另一个类类型使用CREATETABLE语句来创建建表,关键键字为NESTEDTABLE……STOREAS15嵌套表和可可变数组11-4嵌套表与索索引检索表表相似之处数据类型有有相同的结结构用下标来访访问单个元元素为索引检索索表编写的的代码同样样适用于嵌嵌套表16嵌套表和可可变数组11-5嵌套表与索索引表差异嵌套表

索引表使用SQL来操纵并存储在数据库中不可能下标范围:1到2147483647下标范围:-2147483647到2147483647可用ISNULL操作符来验证不可验证可用EXTEND和TRIM方法不可用17嵌套表和可可变数组11-6可变数组类似于C或者Pascal中的数组的的数据类型型类似于嵌套套表或者索索引检索表表可以对其元元素数目设设置限制18嵌套表和可可变数组11-7声明可变数数组用于声明可可变数组的的语法是TYPEtypenameISVARRAY(maximum_size)OFelement_type(notnull);typename是可变数组组名Maximum_size设置了元素素的数目Element_type不能为boolean、ref游标、表或者另一一种可变数数组类型19嵌套表和可可变数组11-8可变数组可变数组可可以存储在在数据库的的列中只可以整个个地对可变变数组进行行操纵要修改一个个可变数组组,首先要要把其值选选到一个变变量中,进进行修改,,然后插入入到表中20嵌套表和可可变数组11-9集合方法方法描述Exists(n)如果第n个元素存在的话,返回TRUECount返回元素的总数Limit返回元素的最大数目First返回该集合的第一个元素Last返回该集合的最后一个元素21嵌套表和可可变数组11-10集合方法方法描述Prior(x)返回第x个元素之前的元素Next(x)返回第x个元素之后的元素Extend(x,y)追加x个第y个元素的副本Trim(x)从集合的末尾处截断x个元素Delete删除部分或者全部元素22嵌套表和可可变数组11-11可变数组与与嵌套表相似之处允许使用下下标来访问问单个元素素可以存储到到数据库的的表中差异可变数组有有最大容量量,而嵌套套表没有可变数组-跟包包含它的表表存储在一一起,嵌套表-存储在在单个表中中23成员函数和和过程2-1构造函数方方法Oracle的每个对象象均有一个个内置的构构造函数方方法用于创建对对象的一个个实例无需显式地地定义与对象类型型同名24成员函数和和过程2-2对象类型包含类型规规格和类型型主体类型规格应用程序的的接口声明数据结结构和操作作来操纵数数据类型主体定义方法实现规格25总结2-1PL/SQL表有一列和和一个主键键记录是存储储在字段中中的一组相相关数据批量绑定一一次绑定

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论