问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我要写一个oracle的存储过程,需要用到一个动态的游标,因为表名和字段个数都是变的,所以我想传入sql语句

发布网友 发布时间:2022-05-15 20:19

我来回答

2个回答

热心网友 时间:2024-02-27 15:38

SQL> DECLARE
2 TYPE refcursor IS REF CURSOR;
3 v_cursor REFCURSOR;
4 v_Sql VARCHAR(200);
5 v_name VARCHAR(10);
6 BEGIN
7 -- 动态SQL
8 v_Sql := 'SELECT name FROM test_dysql';
9 -- 打开游标.
10 OPEN v_cursor FOR v_SQL;
11 -- 循环处理.
12 LOOP
13 -- 填充数据.
14 FETCH v_cursor INTO v_name;
15 -- 无数据时 退出循环.
16 EXIT WHEN v_cursor%NOTFOUND;
17 -- 输出.
18 dbms_output.put_line(v_name);
19 END LOOP;
20 -- 关闭游标.
21 CLOSE v_cursor;
22 EXCEPTION
23 WHEN OTHERS THEN
24 -- 发生异常时,如果游标还打开,那么关闭掉.
25 IF (v_cursor%isopen) THEN
26 CLOSE v_cursor;
27 END IF;
28 RAISE;
29 END;
30 /
A
B
C
D
E
PL/SQL procere successfully completed.追问FETCH v_cursor INTO v_name;
这句话,你定义的v_name是一个变量,可是我要返回的是一张表的数据,有多个字段,我定义了表的类型,可是确报错说类型错误,那我该怎么去填充数据呢?

参考资料:http://hi.baidu.com/wangqing999/blog/item/49752e0d0ed5562b6a60fb51.html

热心网友 时间:2024-02-27 15:38

cur record_set; --遍历用的游标
--游标结果,用于保存动态游标数据
TYPE cursorResult IS RECORD(b NUMBER);
rec cursorResult;
cursor_sql := 'select 1 a from al';
OPEN cur FOR cursor_sql;
LOOP
FETCH cur
INTO rec;
EXIT WHEN cur%NOTFOUND;
--rec.b
END LOOP;
CLOSE cur;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么我的《英雄传说:空之轨迹SC》中“艾尔贝周游道的通缉魔兽”不见... 空之轨迹sc 托兰特平原的通缉魔兽二号 我是2兆的宽带 原先的下载速度达到260KB/S 重装下系统最高还不到70K... 为什么两兆的线下载速度只有80KB/S 我们家宽带是网通的办理了2兆的可是下载速度70~90KB 原因 一九八三年大年三十是什么星座 请教1984年2月1日出生而且阴历生日正好是大年三十,请问我岁是多大 万岱鸿腾国际商贸有限公司送表真的吗 云南岱鸿商贸有限公司怎么样? 重庆鸿岱科技有限公司怎么样? 在oracle 存储过程中,动态创建临时表后,执行一段很长的insert 语句,应该怎么弄呢? Oracle 怎么把存储过程传过来的参数拼接成 我是一名初中生,想自学软件编程但目前却一窍不通,我该如何入手呢? oracle存储过程游标如何拼接sql: 我想定义个游标,但是sql是的条件是拼接而成的,怎样搞才成呢 ORACLE存储过程中拼接sql语句 后在EXCUTE的时候总是报错(详见下面) 做颧骨和下颌角的整形对外貌变化大吗 怎么选择儿童储蓄分红型保险 有没有适合一家老小家庭投的储蓄型分红保险,求介绍 现在版本的武器大师的最强出装顺序是什么? 1500块钱左右的手机推荐 LOL这个版本武器大师怎么出装,顺风和逆风都说一下,不打野 绝对鲜香美味的秘制红烧肉需要怎样来做才会更美味呢? 脾大,厚4.0mm,长约121mm,主要是因为现在白细胞有点低... 肝右叶最斜径121 mm正常吗表面光滑肝组织回声增粗增强分布均匀肝内血管显示清 怀孕八个半个月了羊水指数是121mm正常 121mm管材5度放样 390mm x 205mm x 121mm 是多少米是多少寸,有多大 已知齿轮外径121mm,牙和牙中心距10mm,牙高度10mm,怎么求齿数? 金刚石锯片121mm有这个尺寸的吗 防删除、防复制等功能,文件加密与文件夹加密配合使用,没有密码无人能破解的企业加密软件? vmware飘移是哪一种高可用方式 加裕智倍保分红可以取吗 友邦保险终身寿险哪儿划算 佳能复印件有那些功能 没有出生的小孩可以买什么保险吗 eb病毒感染能买成香港保险吗 打电话催款怎么说,要详细的,客户老说没钱,没有收到款,一拖再拖,财务这边呢,又老是叫我催 据说可以用京东微联超级APP远程控制阿里斯顿智能电热水器了,大家知道这是怎么一回事吗? 设计思维对英语专业的作用? 设计思考从什么工具箱中汲取? 浅谈创新思维方法在工业设计中的应用 (论文英文标题)英文翻译 旨向培养学生思维的英语课堂教学活动设计与实践研究有什么学术价值_百度问一问 电脑硬盘有坏道了能修复吗? 钢化炉后边的反光条什么作用? 为什么绥中远图科技生产的钢化炉省电呢?是技术问题吗? 请问第五人格碎片的许愿码怎么获得,谁知道告诉我一下,谢谢 谁有第五人格的许愿码,没用过的啥都行。成功了,我喊你爸爸? 求第五人格祭祀梦之使者许愿码(没用过谢谢勿喷) 求徐士良的 <计算机软件技术基础>第二版的课后答案、课件PPT、练习题等等资料、、 全部的初中物理公式,谁有