在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

SYS

172次阅读
没有评论

共计 3394 个字符,预计需要花费 9 分钟才能阅读完成。

这篇文章主要讲解了“SYS_REFCURSOR 作为过程参数的表现是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着丸趣 TV 小编的思路慢慢深入,一起来研究和学习“SYS_REFCURSOR 作为过程参数的表现是什么”吧!

我创建了如下的表并填充数据:

CREATE TABLE plch_tab (item VARCHAR2 (10))
 
BEGIN
 INSERT INTO plch_tab
 VALUES ( Keyboard 
 INSERT INTO plch_tab
 VALUES ( Mouse 
 COMMIT;
/

然后我创建了这个函数,从游标变量取得一行数据并返回:

CREATE OR REPLACE FUNCTION plch_getitem ( plch_cur IN SYS_REFCURSOR)
 RETURN plch_tab.item%TYPE
 lvretval plch_tab.item%TYPE;
BEGIN
 FETCH plch_cur INTO lvretval;
 RETURN lvretval;
END plch_getitem;
/

现在我需要写一个程序块来获取表里的数据行,并且显示行数和最后一行的项目名称。下面就是这个接近完成的版本:

DECLARE
 lvitem plch_tab.item%TYPE;
 test_cur SYS_REFCURSOR;
BEGIN
 OPEN test_cur FOR
 SELECT * FROM plch_tab ORDER BY item;
 /*FETCH*/
 DBMS_OUTPUT.put_line (Count =   || test_cur%ROWCOUNT);
 DBMS_OUTPUT.put_line ( Item =   || NVL (lvitem,  NOT SET 
 CLOSE test_cur;
/

下列的选项中哪些可用来代替 /*FETCH*/ 从而使得这个块执行之后,屏幕上可以见到如下输出?

Count = 2

Item = Mouse

 

(A)

FETCH test_cur INTO lvitem;
lvitem := plch_getitem (test_cur);
SQL  DECLARE
 2 lvitem plch_tab.item%TYPE;
 3 test_cur SYS_REFCURSOR;
 4 BEGIN
 5 OPEN test_cur FOR
 6 SELECT * FROM plch_tab ORDER BY item;
 7 
 8 FETCH test_cur
 9 INTO lvitem;
 10 lvitem := plch_getitem(test_cur);
 11 
 12 DBMS_OUTPUT.put_line(Count =   || test_cur%ROWCOUNT);
 13 DBMS_OUTPUT.put_line( Item =   || NVL(lvitem,  NOT SET 
 14 
 15 CLOSE test_cur;
 16 END;
 17 /
Count = 2
Item = Mouse
PL/SQL procedure successfully completed
SQL

(B)

lvitem := plch_getitem (test_cur);
lvitem := plch_getitem (test_cur);
SQL  DECLARE
 2 lvitem plch_tab.item%TYPE;
 3 test_cur SYS_REFCURSOR;
 4 BEGIN
 5 OPEN test_cur FOR
 6 SELECT * FROM plch_tab ORDER BY item;
 7 
 8 lvitem := plch_getitem(test_cur);
 9 lvitem := plch_getitem(test_cur);
 10 
 11 DBMS_OUTPUT.put_line(Count =   || test_cur%ROWCOUNT);
 12 DBMS_OUTPUT.put_line( Item =   || NVL(lvitem,  NOT SET 
 13 
 14 CLOSE test_cur;
 15 END;
 16 /
Count = 2
Item = Mouse
PL/SQL procedure successfully completed
SQL

(C)

lvitem := plch_getitem (test_cur);
FETCH test_cur INTO lvitem;
SQL  DECLARE
 2 lvitem plch_tab.item%TYPE;
 3 test_cur SYS_REFCURSOR;
 4 BEGIN
 5 OPEN test_cur FOR
 6 SELECT * FROM plch_tab ORDER BY item;
 7 
 8 lvitem := plch_getitem(test_cur);
 9 FETCH test_cur
 10 INTO lvitem;
 11 
 12 DBMS_OUTPUT.put_line(Count =   || test_cur%ROWCOUNT);
 13 DBMS_OUTPUT.put_line( Item =   || NVL(lvitem,  NOT SET 
 14 
 15 CLOSE test_cur;
 16 END;
 17 /
Count = 2
Item = Mouse
PL/SQL procedure successfully completed
SQL

(D)

lvitem := plch_getitem (test_cur);
FETCH plch_cur INTO lvitem;
SQL  DECLARE
 2 lvitem plch_tab.item%TYPE;
 3 test_cur SYS_REFCURSOR;
 4 BEGIN
 5 OPEN test_cur FOR
 6 SELECT * FROM plch_tab ORDER BY item;
 7 
 8 lvitem := plch_getitem(test_cur);
 9 FETCH plch_cur
 10 INTO lvitem;
 11 
 12 DBMS_OUTPUT.put_line(Count =   || test_cur%ROWCOUNT);
 13 DBMS_OUTPUT.put_line( Item =   || NVL(lvitem,  NOT SET 
 14 
 15 CLOSE test_cur;
 16 END;
 17 /
DECLARE
 lvitem plch_tab.item%TYPE;
 test_cur SYS_REFCURSOR;
BEGIN
 OPEN test_cur FOR
 SELECT * FROM plch_tab ORDER BY item;
 lvitem := plch_getitem(test_cur);
 FETCH plch_cur
 INTO lvitem;
 DBMS_OUTPUT.put_line(Count =   || test_cur%ROWCOUNT);
 DBMS_OUTPUT.put_line( Item =   || NVL(lvitem,  NOT SET 
 CLOSE test_cur;
ORA-06550:  第  9  行,  第  9  列: 
PLS-00201:  必须声明标识符   PLCH_CUR 
ORA-06550:  第  9  行,  第  3  列: 
PL/SQL: SQL Statement ignored
SQL
 答案 ABC.  答案 D 错误因为 plch_cur 这个名称在函数之外是不可见的。REF CURSOR 作为 IN 参数(不需要定义为 IN OUT),在 FETCH 之后游标仍然会前移,所以你调用之后再 FETCH 会取到下一行。

感谢各位的阅读,以上就是“SYS_REFCURSOR 作为过程参数的表现是什么”的内容了,经过本文的学习后,相信大家对 SYS_REFCURSOR 作为过程参数的表现是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是丸趣 TV,丸趣 TV 小编将为大家推送更多相关知识点的文章,欢迎关注!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-26发表,共计3394字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 香蕉久久一区二区不卡无毒影院 | 一个人看的www片免费高清视频 | 麻豆av一区二区三区久久 | 99久久国语露脸精品国产 | 国产乱子伦视频一区二区三区 | 久久爱com | 色综合亚洲欧美在线 | 日本一级在线播放线观看免 | 韩国特级一级毛片免费网站 | 在线一区二区三区 | 亚洲精品国产一区二区三区在 | 久久综合电影 | 国产香蕉在线视频一级毛片 | www.亚洲视频.com | 成人精品一区二区户外勾搭野战 | 欧美黄色特级视频 | 2020国产精品永久在线观看 | 精品免费久久久久久成人影院 | 色综合久久88色综合天天小说 | 日本九九精品一区二区 | 亚洲欧美二区三区久本道 | 天天操夜夜逼 | 美女张开腿让男生桶 | 午夜一区二区福利视频在线 | 成人男男黄网色视频免费 | 国产免费啪视频观看网站 | 中国凸偷窥xxxx自由视频妇科 | 国产亚洲精品一区999 | 性教育做爰视频免费观看 | 老年人一级毛片 | 国产成人夜色91 | 国产精品麻豆a在线播放 | 天天看有黄有色大片 | 亚洲精品成人久久 | 日韩高清一区二区 | 久久天天躁狠狠躁夜夜96流白浆 | 天堂精品高清1区2区3区 | 久久成人性色生活片 | 国产做国产爱免费视频 | 欧美色碰碰碰免费观看长视频 | 国产精品亲子乱子伦xxxx裸 |