%ROWTYPE是什么功能?

[复制链接]
查看11 | 回复6 | 2010-3-1 11:19:06 | 显示全部楼层 |阅读模式
游标循环时为什么用这个?不用这个行不行??
BAIDU了一下没有找到答案,特来此请教如何高深的问题! 3Q

回复

使用道具 举报

千问 | 2010-3-1 11:19:06 | 显示全部楼层
也可以不用呀,一个变量一个变量定义好
回复

使用道具 举报

千问 | 2010-3-1 11:19:06 | 显示全部楼层
好处
1.体现源头变化的时候跟着变化,比如源头少了个列,自动少一个列,就是没有写死的意思
2.是记录类型,可以一次引用很多个对应的域,不用定义一个个的变量
ps:搜技术资料还用百度?

回复

使用道具 举报

千问 | 2010-3-1 11:19:06 | 显示全部楼层
本帖最后由 jianping1991 于 2013-3-18 16:03 编辑
%rowtype是表行的一个记录类型,使用它定义变量时,可以存放相应的记录。例子如下:
SQL> create table t
2as
3select *
4from all_objects
5/
表已创建。
SQL> alter table t add constraint t_pk primary key(object_id)
2/
表已更改。
SQL> set serveroutput on
SQL> declare
2 l_t_rec t%rowtype;
3
4 cursor c is
5 select *
6from t
7 where object_id
如果需要,可以自己定义记录类型。
回复

使用道具 举报

千问 | 2010-3-1 11:19:06 | 显示全部楼层
可以理解为结构体数组
回复

使用道具 举报

千问 | 2010-3-1 11:19:06 | 显示全部楼层
一个记录类型,可以表示一行记录.
row_rec table_a%ROWTYPE; --代表了表table_a的记录,到时row_rec可以记录table_a表的行记录了
回复

使用道具 举报

千问 | 2010-3-1 11:19:06 | 显示全部楼层
atgc 发表于 2013-3-18 16:02
可以理解为结构体数组

也可以理解为只有属性的对象
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行