oracle PL\SQL块和复合类型
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了oracle PL\SQL块和复合类型,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1797字,纯文字阅读大概需要3分钟。
内容图文
![oracle PL\SQL块和复合类型](/upload/InfoBanner/zyjiaocheng/504/3a7c2fa46d644e569ab93b63f9d3c26e.jpg)
其结构如下:
declare
/*声明部分:说明要用到得变量,类型及游标,以及局部存储过程和函数*/
/*变量的定义和系统保留字要区分开(sql server 中可用@ PL\SQL不能用@)*/
begin
/*执行部分:过程及SQL语句*/
/*必须有*/
exception
/*异常处理部分:错误处理*/
end;
PL/SQL中除了一些常见的变量类型外,还有复合类型
复合类型分为记录和表
记录:由单行多列的标量构成的复合结构。可以看做是一种用户自定义数据类型。将一个或多个标量封装成一个对象进行操作。是一种临时复合对象类型。
语法:
type record_type is record(
Field1 type1 [not null] [:= exp1],
Field1 type1 [not null] [:= exp2],
...
Fieldn typen [not null] [:= expn]);
其中可以用%type和%rowtype 来为声明的变量快速指明类型。
%type——使其对应的变量类型与已经定义好的某个数据变量的类型相同
%rowtype——返回一个记录类型,其数据类型和数据库表的数据结构相同
表:使用记录类型变量只能保存一行数据,这限制了select返回行数,如果SELECT语句返回多行就会错。Oracle提供了另外一种自定义类型,也就是 表类型,它是对记录类型的扩展,允许处理多行数据,类似于表。
语法:
type type_name is table of table%rowtype [index by binary_integer];
例子1:
结果:
在这个例子中注意:声明部分类似JAVA中的类——先定义一个类,然后定义一个它的对象
执行部分:select —into—from—where 从表中选择一个合适的记录,然后赋值给into后的记录类型变量
例子2:
结果:
在例子2中,C_course%rowtype——说明表类型变量course_table_type的数据类型和C_course表的数据结构相同
index by binary_integer——指定系统创建一个主键索引,用于引用表类型变量中的特定行
/*有这个后面的my_table(1)和my_table(2)才有意义*/
创建表类型变量的意义就如上面提到的一样,在于处理多行数据。
oracle PL\SQL块和复合类型
标签:创建表 java rom span image type 保留 bin 14.
本文系统来源:https://www.cnblogs.com/109-379-4468/p/10068229.html
内容总结
以上是互联网集市为您收集整理的oracle PL\SQL块和复合类型全部内容,希望文章能够帮你解决oracle PL\SQL块和复合类型所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。