`
kavy
  • 浏览: 872482 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

%type与%rowtype区别

 
阅读更多

%TYPE:属性的一种方式是在变量声明中使用。%TYPE是用于取得表或游标中的字段类型,
例如,可以使用它来声明ARTIST表中字段类型相同的变量,注意可以在表中名和字段之间使用点号(.)。
DEALARE
V_UNIT_NAME    kwmis_xm_unit_bg.UNIT_NAME%TYPE;
V_BGOID    kwmis_xm_unit_bg.BGOID%TYPE;
通过这种方式就不需要明确指定SQL数据类型,从而改善了代码的可维护性,因为表中字段类型的改变会自动反映在PL/SQL中;

%ROWTYPE
使用%ROWTYPE属性可以声明一个基于表或游标的行对象,也称为记录对象,例如,可以基于ARTIST声明一个行对象:
declare
   newXmUnitBg    kwmis_xm_unit_bg%rowtype;
一旦生成这条记录,那么就可以通过游标使用句号来提取newXmUnitBg的字段值,例如newXmUnitBg.UNIT_NAME 单位名称, newXmUnitBg.BGOID 变更申请号

cursor frdm_cursor   is SELECT FRDM_TZH FROM   kwmis_xm_unit_bg   WHERE bgoid=V_BGOID and      bg_flag='1'
AND FRDM_TZH in(select frdm from kwmis_unit_baseinfo);

begin
   OPEN frdm_cursor;
   LOOP
   FETCH frdm_cursor INTO v_frdm;

if   frdm_cursor%notfound   then    frdm_cursor%found

exit when frdm_cursor%notfound    frdm_cursor%found

%TYPE是跟表中的字段的类型一致,是变量类型.而%ROWTYPE是跟表中的行类型一致,是record类型.

分享到:
评论

相关推荐

    Oracle PL/SQL中如何使用%TYPE和%ROWTYPE

    Oracle PL/SQL 中的 %TYPE 和 %ROWTYPE 应用详解 Oracle PL/SQL 是一种强大的编程语言,广泛应用于数据库开发中。在 PL/SQL 中,变量的声明和使用是非常重要的。其中,%TYPE 和 %ROWTYPE 是两个非常重要的概念,...

    Oracle_plsql基本语法笔记.txt

    %type用法,%rowtype用法,TYPE用法 游标的使用 for 循环 loop循环 while循环 if / else 的用法 case 的用法 标题 错误定义 error的设定 exception用法 标题 存储过程及函数 procedure 的建立...

    PL/SQL 基础.doc

    5. SQL与PL/SQL的区别 SQL:1) 第四代语言(智能语言); 2) 做什么,不管怎么做; 3) 缺少过程与控制语句; 4) 无算法 PL/SQL: (相对SQL扩展部分) 1) 扩展变量和类型; 2) 扩展控制结构; 3) 扩展过程与函数...

    亚信科技面试原题数据库

    平台管理维护-数据库平台编码 技术能力考试2级 课程名称 oracle数据库系统编程 课程号 MD02 考试时间 90分钟 考试方式(闭)卷 (共 6 页) (本试卷满分100分,60分... %TYPE B. %ROWTYPE C. 列列表 D. %ROWCOUNT

    Oracle PL SQL经典练习题1.docx

    Oracle PL/SQL经典练习题 ...这些练习题涵盖了PL/SQL程序块的多方面知识点,包括变量声明、select into语句、dbms_output.put_line语句、异常处理、%type 属性、%rowtype 属性、update语句、if-elsif语句等。

    PLSQL编程03

    PL/SQL基础编程之(三)[自定义复合变量][%TYPE和%ROWTYPE的应用]

    oracle存储过程、游标、函数、PL/SQL块

    包含oracle存储过程的增、删、查、改 %type、%rowtype的使用 自定义函数 PL/SQL块

    PLsql语法.md

    #### PLsql 是什么 - 是专用于Oracle服务器,在SQL基础之上,**添加了一些过程化控制语句,叫PLSQL** ...##### 何时使用%type,何时使用%rowtype? ### 条件判断 #### 基本语法 #### 小练习

    SQLBoy 存储过程之历险记

    文章目录:1、概述:2、存储过程概念及语法格式:3、数据类型与定义变量和常量4、特殊数据类型之%TYPE和%ROWTYPE5、在存储过程中%TYPE和%ROWTYPE常用来在PL/SQL中定义变量:6、 循环语句Loop 使用7、PL/SQL 游标 概念...

    3oracle_plsql基础.pptx

    `%TYPE`用于创建与现有列具有相同数据类型的变量,而`%ROWTYPE`则创建一个变量,该变量包含表的所有列。 9. **过程和函数** 过程和函数是PL/SQL中的核心组成部分,用于封装业务逻辑。过程不返回值,而函数则返回...

    PLSQL培训文档.ppt

    %TYPE 可以将变量类型定义为与数据库中表的字段相同的类型,当字段的数据类型变化时则变量的类型也相应的变化。%ROWTYPE 可以将变量类型定义为与具有相同类型的数据库行。 5. 内置 SQL 函数 PLSQL 提供了多种内置 ...

    数据库-简单-plsql.ppt

    4. **集成数据类型** - PL/SQL不仅支持SQL的所有数据类型,还引入了`%type`和`%Rowtype`,使得变量可以直接与数据库表的列类型对应,简化了类型管理。 **PL/SQL块的结构:** 1. **声明部分 (DECLARE)** - 在这个...

    Oracle存储过程 知识点总结

    - `%ROWTYPE`则创建一个与数据库表行结构相同的记录类型,如`v_StuRec Student%ROWTYPE`,它包含了表`Student`的所有字段。 以上是对Oracle存储过程及其相关知识点的详细阐述,这些知识对于理解和编写Oracle数据库...

    Oracle实验五.docx

    `%TYPE`关键字允许变量与已存在的表列具有相同的数据类型,如`v_ename emp.ename%type`。这样可以确保变量和表列保持数据类型的一致性,简化代码维护。 4. **游标使用**: 游标用于逐行处理查询结果。实验中没有...

    oracle 基础

    这个文档主要是讲pck里面的语法,还没写完 ...重点是对函数请求参数、返回,into、 for、 corsor、%type、%rowtype等的简单理解tst 测试pck文件还会继续完善 PCK文件配置有截图和详细说明 请看文件夹里面的 说明 文件

    pl/sql学习笔记

    `%TYPE`用于创建与现有列相同类型的变量,而`%ROWTYPE`创建一个与指定表行结构相同的记录变量。 学习PL/SQL不仅需要理解上述概念,还需要通过实践来熟悉其语法和特性。通过编写简单的脚本、存储过程和函数,逐步...

    Oracle_PL_SQL经典练习题.docx

    3. 第三个练习利用了`%type`属性,它允许我们声明的变量与表列具有相同的数据类型。通过这种方式,我们可以获取雇员的整体薪水(薪水加佣金),并在`NO_DATA_FOUND`异常处理中提供反馈。 4. 第四个练习展示了一个...

    如何编写高效健壮的ORACLE存储过程.pdf

    然而,通过使用`%TYPE`和`%ROWTYPE`属性,我们可以将存储过程中的变量与表的列直接关联,增强代码的健壮性。`%TYPE`使得变量的数据类型与表字段保持一致,自动适应字段类型的变化,减少了维护工作。而`%ROWTYPE`则...

    proc 游标讲述

    TYPE ref_cursor_type IS REF CURSOR RETURN table_name%ROWTYPE; ``` 然后,我们可以声明一个REF游标变量并用之执行动态SQL: ```sql DECLARE v_refCursor REF CURSOR; v_ename EMP.ENAME%TYPE; v_salary EMP....

Global site tag (gtag.js) - Google Analytics