Oracle PLSQL中如何使用%TYPE和%ROWTYPE.docx

上传人:牧羊曲112 文档编号:3162574 上传时间:2023-03-11 格式:DOCX 页数:3 大小:37.30KB
返回 下载 相关 举报
Oracle PLSQL中如何使用%TYPE和%ROWTYPE.docx_第1页
第1页 / 共3页
Oracle PLSQL中如何使用%TYPE和%ROWTYPE.docx_第2页
第2页 / 共3页
Oracle PLSQL中如何使用%TYPE和%ROWTYPE.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《Oracle PLSQL中如何使用%TYPE和%ROWTYPE.docx》由会员分享,可在线阅读,更多相关《Oracle PLSQL中如何使用%TYPE和%ROWTYPE.docx(3页珍藏版)》请在三一办公上搜索。

1、Oracle PLSQL中如何使用%TYPE和%ROWTYPEOracle PL/SQL中如何使用%TYPE和%ROWTYPE 1. 使用%TYPE 在许多情况下,PL/SQL变量可以用来存储在数据库表中的数据。在这种情况下,变量应该拥有与表列相同的类型。例如,students表的first_name列的类型为VARCHAR2(20),我们可以按照下述方式声明一个变量: DECLARE v_FirstName VARCHAR2(20); 但是如果first_name列的定义改变了会发生什么?那就会导致所有使用这个列的PL/SQL代码都必须进行修改。如果你有很多的PL/SQL代码,这种处理可能是

2、十分耗时和容易出错的。 这时,你可以使用”%TYPE”属性而不是将变量类型硬性编码。 例如: DECLARE v_FirstName students.first_name%TYPE; 通过使用%TYPE,v_FirstName变量将同students表的first_name列的类型相同。 每次匿名块或命名块运行该语句块以及编译存储对象时,就会确定该类型。 使用%TYPE是非常好的编程风格,因为它使得PL/SQL更加灵活,更加适应于对数据库定义的更新。 2. 使用%ROWTYPE 2.1 PL/SQL记录 PL/SQL记录类型类似于C语言中的结构,是一种复合类型,是用户自定义的。 记录提供了一

3、种处理独立的但又作为一个整体单元相关的变量的机制。请看: DECLARE v_StudentID NUMBER(5); v_FirstName VARCHAR2(20); v_LastName VARCHAR2(20); 这3个变量在逻辑上是相互关联的,因为他们指向students表中不同的字段。如果为这些变量声明一个记录类型,那么他们之间的关系就十分明显,可作为一个单元进行处理。 DECLARE /*Define a record type to hold common student informationi*/ TYPE t_StudentRecord IS RECORD( Studen

4、tID NUMBER(5), FirstName VARCHAR2(20), LastName VARCHAR2(20); /*Declare a variable of this type.*/ v_StudentInfo t_StudentRecord; 2.2 记录赋值 可以用SELECT语句向记录赋值,这将会从数据库中检索数据并将该数据存储到记录中。注意的是,记录中字段应该和查询结果列表中的字段相匹配。 SELECT studentID,firstName,lastName into v_StudentInfo from students where studentID=32; 2.3 使用%ROWTYPE 在PL/SQL中将一个记录声明为具有相同类型的数据库行的作法是很常见的。PL/SQL提供了%ROWTYPE运算符,使得这样的操作更为方便。 例如: DECLARE v_RoomRecord rooms%ROWTYPE; 将定义一个记录,该记录中的字段将与rooms表中的列相对应。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号