高级PL/SQL的使用;

使用游标

1)显示游标:

CURSOR name_cursor IS select statement;

2)打开游标:

OPEN name_cursor;

3)提取游标

FETCH name_cursor INTO variable1,variable2.............

4)关闭游标

CLOSE name_cursor;

显示游标的属性:

%ISOPEN:显示游标是否打开

%FOUND:是否从结果集中取到数据

%NOTFOUND:是否未从结果集中取到数据

%ROWCOUNT:已经取到的数据,不是说集合中间有多少数据,请这里注意;

DECLARE
CURSOR a_cursor IS SELECT id,name from test1;
v_id test1.id%TYPE;
v_name test1.name%TYPE;
BEGIN
OPEN a_cursor;
FETCH a_cursor INTO v_id,v_name;
dbms_output.put_line(v_id);
dbms_output.put_line(v_name);
CLOSE a_cursor;
END;

使用游标更新或者删除数据:

如果想通过游标更新或者删除数据的话,那么在定义游标的时候必须指定 FOR UPDATE

如下:

CURSOR my_cursor IS SELECT * FROM test1 FOR UPDATE;

UPDATE table_name SET column=xx WHERE CURRENT OF name_cursor;

DELETE table_name WHERE CURRENT OF name_cursor;

必须指定WHERE CURRENT OF name_current;

 

使用例外:

EXCEPTION

WHEN  e_name1 or e_name2 THEN

statement1;

WHEN 2_name3 THEN

statement2;

ELSE

statement3;

WHEN OTHERS THEN

statement4;

其中自定义异常是这样的:


 DECLARE
 e_name EXCEPTION;
 BEGIN
 RAISE e_name;
 EXCEPTION
 WHEN e_name THEN
 dbms_output.put_line('异常抛出');
 END;

使用复合数据:

TYPE my_record_type IS RECORD

DECLARE
TYPE my_record_type IS RECORD(
id test1.id%TYPE,
name test1.name%TYPE
);
r1 my_record_type;
BEGIN
SELECT id,name INTO r1 FROM test1 WHERE id=1;      
dbms_output.put_line(r1.id || r1.name);
END;


 DECLARE
 TYPE my_record_type IS RECORD(
 id test1.id%TYPE,
 name test1.name%TYPE
 );
 r1 test1%ROWTYPE;
 BEGIN
 SELECT * INTO r1 FROM test1 WHERE id=1;   

 dbms_output.put_line(r1.id || r1.name);
 END;
 /

使用PL/SQl表:

DECLARE
TYPE my_table_type IS TABLE OF NUMBER(2,0)
INDEX BY BINARY_INTEGER;
name_table my_table_type;
BEGIN
select id BULK COLLECT INTO name_table from test1;
dbms_output.put_line(name_table(1));
End;

使用PL/SQL记录表:

 DECLARE
 TYPE my_table_type IS TABLE OF test1%ROWTYPE
 INDEX BY BINARY_INTEGER;
 name_table my_table_type;
 BEGIN
 select * BULK COLLECT INTO name_table from test1;
 dbms_output.put_line(name_table(1).name);
 End;

DECLARE
TYPE my_table_type IS TABLE OF test1%ROWTYPE
INDEX BY BINARY_INTEGER;
name_table my_table_type;
BEGIN
select * BULK COLLECT INTO name_table from test1;   --count可以得到这个表的长度
FOR i in 1..name_table.count LOOP
dbms_output.put_line(name_table(i).name);
END LOOP;
End;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: PL/SQL Developer是一个强大且功能丰富的集成开发环境(IDE),专门用于开发和调试PL/SQL程序。它提供了许多强大的功能,帮助开发人员更高效地编写和维护PL/SQL代码。 PL/SQL Developer使用手册是一本详细说明了PL/SQL Developer的各种功能和用法的指南。它被设计成易于理解和操作,以帮助用户快速上手并掌握PL/SQL Developer的各种功能。 在使用手册中,用户可以找到关于如何安装和配置PL/SQL Developer的详细说明。它还提供了关于如何创建新项目和连接到数据库的步骤。对于那些已经熟悉PL/SQL开发的用户,使用手册还提供了如何使用PL/SQL Developer来编辑、编译和调试PL/SQL代码的详细说明。 使用手册还介绍了PL/SQL Developer的一些高级功能,如代码自动完成、代码调试器、性能调优等。这些功能可以使开发人员更高效地开发和调试PL/SQL代码,并提高代码的质量和性能。 除了详细的功能说明,使用手册还提供了一些实用的技巧和建议,帮助用户更好地利用PL/SQL Developer的各种功能。例如,如何使用快捷键、如何管理和组织代码等。 总之,PL/SQL Developer使用手册是一个非常有价值的工具,它可以帮助开发人员更好地掌握和使用PL/SQL Developer。通过仔细阅读和使用手册中的指导,用户可以更加高效地开发和维护PL/SQL代码,并提高开发效率和代码质量。 ### 回答2: PL/SQL Developer是一款功能强大的数据库开发工具,主要用于编写、调试和优化Oracle数据库的PL/SQL程序。以下是对PL/SQL Developer使用手册的解读和概述。 首先,手册提供了详细的安装和配置指南。用户可以根据手册中的步骤进行软件安装和数据库连接的配置,确保程序可以正常运行。 其次,手册介绍了PL/SQL Developer的基本功能和界面。用户可以了解如何打开和关闭编辑器、如何管理和组织数据库对象、如何执行SQL查询和PL/SQL程序等。手册中还提供了快捷键和常用功能的说明,帮助用户更高效地操作和开发。 手册还详细介绍了PL/SQL调试功能。通过手册中的指南,用户可以了解如何设置断点、查看变量值、单步执行程序等。这些调试功能对于程序的调试和错误排查非常有帮助。 此外,手册还提供了丰富的SQLPL/SQL语法参考。用户可以查阅手册中的语法规则和示例,以便正确地编写和优化代码。手册中还介绍了常用的编程技巧和性能优化建议,帮助用户提高开发效率和程序执行效果。 最后,手册中还包含了一些高级主题,如数据库安全、数据复制、数据迁移等。用户可以根据需求选择阅读这些主题,了解更多关于数据库管理和开发的实践经验和技巧。 总而言之,PL/SQL Developer使用手册是一份详尽的指南,提供了全面的功能介绍、操作指南和参考文档。用户可以通过阅读手册,掌握PL/SQL Developer的使用技巧,提高数据库开发效率和程序质量。 ### 回答3: PL/SQL Developer是一款功能强大的数据库开发工具,可以提高PL/SQL开发人员的工作效率和编码质量。下面是一个关于PL/SQL Developer使用手册的简要介绍: PL/SQL Developer的使用手册包含了详细的功能介绍和使用指南。在手册中,可以找到关于如何安装和配置PL/SQL Developer的步骤,以及如何连接和管理多个数据库的说明。手册还包括了一个演示数据库,可以帮助用户快速上手并熟悉工具的各项功能。 手册中的主要部分是关于SQLPL/SQL的编辑和调试的说明。这些说明详细介绍了如何使用PL/SQL Developer的编辑器来编写和修改SQL语句和存储过程。手册还提供了一些有关调试和性能优化的技巧,以帮助开发人员在开发过程中更加高效地解决问题。 除了SQLPL/SQL的编辑和调试,手册还包含了其他一些有用的功能介绍。例如,手册指导用户如何使用版本控制和团队协作功能来提高团队开发的效率。手册还介绍了如何使用代码搜索和替换工具,以及如何使用数据字典和表达式编辑器来更方便地访问和管理数据库对象。 总的来说,PL/SQL Developer使用手册是一个详细而全面的资源,可以帮助开发人员快速上手并熟练使用这个强大的开发工具。对于初学者来说,手册提供了一个系统的学习路径,帮助他们逐步掌握各种功能。对于有经验的开发人员来说,手册提供了一些高级技巧和最佳实践,可以进一步提高他们的开发效率和数据库管理能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值