简体   繁体   English

打印Oracle Pl / sql游标

[英]Print Oracle Pl/sql Cursor

Can I directly open and print cursor in begin end block without using loops? 我可以不使用循环而直接在begin end块中打开并打印光标吗? or without reading each column and printing it individually for each row. 或不读取每一列并为每一行单独打印。

If you want to display one record there is no need for looping in your cursor. 如果要显示一条记录,则无需在光标中循环。 If multiple then you need looping in cursor. 如果是多个,则需要循环游标。 Eg In **Test_Project** Table has two column:- 例如,在**Test_Project**表中有两列:

projectid           projectname 

p2                  Programming     
p1                 Search Engine    
p3                 Testing

--Below is the code to display one record without using loop -以下是不使用循环显示一条记录的代码

Declare 

   cprojname varchar2(2000)   ;

   CURSOR c1
   IS
      select project_name from test_project WHERE projectid='p1';

BEGIN

   OPEN c1;
   FETCH c1 INTO cprojname;

   if c1%notfound then
      cprojname := 'no data';
   else
   dbms_output.put_line(cprojname);

   end if;

   CLOSE c1;

END;

o/p:- Search Engine o / p:-搜索引擎

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM