pl/sql三种特殊数据类型

pl/sql除了可以使用Orecle规定的基本类型外,还提供了3种特殊的数据类型%type类型、record类型和%rowtype类型。

【%type类型】

使用%type可以声明一个与指定列名称相同的数据类型,例如 :v_id emp.id%type 是声名一个和emp表中id字段相同类型的变量。

使用%type定义变量有两点好处:第一,定义变量时不必查看表中各个列的数据类型;第二,如果表中列数据类型进行了修改,使用%type定义的变量会自动进行调整。

【 record类型】

也称记录类型,使用record的变量可以存储多个列值组成的一行数据。使用方式如下:

declare

type emp_type is record(           ---------------------声明record类型emp_type

v_id emp.id%type;

v_name emp.name%type;

)

empInfo emp_type;                    -------------------声明emp_type类型的变量empInfo

begin

select id name into empInfo from emp where id=1;

/*

查询emp表中id为1的记录赋给empInfo

*/

dbms_output.put_line(empInfo.v_id||‘==========>‘||empInfo.v_name);

end;

【    】

%rowtype类型的变量结合了%type类型和record类型的优点,可以根据表中行的结构定义数据类型,用来存储一条记录。例如:

declare

empInfo emp%rowtype;

begin

select * into empInfo from emp where id=1;

dbms_output.put_line(empInfo.id||‘========>‘||emp.name);

end;

pl/sql三种特殊数据类型

时间: 2024-10-10 07:36:08

pl/sql三种特殊数据类型的相关文章

Oracle之PL/SQL学习笔记之数据类型(三)

Oracle之PL/SQL学习笔记之数据类型(三) 所有的编程语言中变量是使用最频繁的.PL/SQL作为一个面向过程的数据库编程语言同样少不了变量,利用变量可以把PL/SQL块需要的参数传递进来,做到动态执行程序,同时也可以利用变量在PL/SQL内部进行值得传递,甚至可以把值传递出去,最终返回给用户,由此可见,变量是PL/SQL不可或缺的一部分. 1. Oracle预定义的普通数据类型(常见的数据类型) 类型 子类 说明 Oracle中的范围 char Character,String Rowi

[转]SQL三种获取自增长的ID方法

SQL SERVER中的三种获得自增长ID的方法  这个功能比较常用,所以记下来以防自己忘掉. SCOPE_IDENTITY 返回插入到同一作用域中的 IDENTITY 列内的最后一个 IDENTITY 值.一个作用域就是一个模块--存储过程.触发器.函数或批处理.因此,如果两个语句处于同一个存储过程.函数或批处理中,则它们位于相同的作用域中. IDENT_CURRENT  返回为任何会话和任何作用域中的指定表最后生成的标识值.这个函数需要一个以表名为值的变量,也就是说虽然不受会话和作用域的限制

Linq to Sql : 三种事务处理方式

原文:Linq to Sql : 三种事务处理方式 Linq to SQL支持三种事务处理模型:显式本地事务.显式可分发事务.隐式事务.(from  MSDN: 事务 (LINQ to SQL)).MSDN中描述得相对比较粗狂,下面就结合实例来对此进行阐述. 0. 测试环境 OS Windows Server 2008 Enterprise + sp1 IDE Visual Studio 2008, .net framework 3.5 + SP1 DB SQL Server 2000 + sp

Python三种基础数据类型:列表list,元祖tuple和字典dict

Python的三种基本数据类型,列表list,元祖tuple和字典dict 列表List:python最基础的数据类型,列表内的数据项不需要具有相同的类型,可以包含重复值.列表包括两个模块,元素及对应的索引,其中索引正值表示从头开始取,负值表示倒项取数. 操作:索引.切片.加.减.乘.检查成员 索引:查看某个索引的值my_list[1],查看系列的值my_list[1:5] 切片:my_list[1:5],注意:my_list[::n]该用法表示从取的元素开始取第n元素,依次类推 加和乘:表示对

Redis三种特殊数据类型:HyperLogLog、BigMap、Geo

引语: Redis 是一个高性能.(key/value).分布式,基于内存运行.支持持久化的NoSQL数据库. 它也常被称为数据结构服务器,因为它存储的值(value)可以是String .hash.list(有序.可索引:实现队列.栈).set.zset(有序集合)等数据类型.这也是redis相比于其他缓存工具的一个优势:可以支持丰富的数据结构. 今天想与大家介绍的便是,redis另三种特殊的数据结构:Geo.HyperLogLog. BitMap 浅谈数据类型与数据结构的不同 数据类型定义了

Sql三种分页方法

--分页三种方法--第一种 ROW_NUMBER() OVER( ORDER BY OrgID) AS indexs 大于pagesize*pageindex,少于等于pagesize*(pageindex+1) --效率最高SELECT * FROM Sys_User AS ALEFT JOIN(SELECT ROW_NUMBER() OVER( ORDER BY OrgID) AS indexs ,ID FROM dbo.Sys_User --效率 次之) AS B ON A.ID = B.

Oracle Sql三种连接方式

Oracle执行计划详解 --- 一.相关的概念 Rowid的概念 Recursive Sql概念 Predicate(谓词) DRiving Table(驱动表) Probed Table(被探查表) 组合索引(concatenated index) 可选择性(selectivity) 二.oracle访问数据的存取方法 1) 全表扫描(Full Table Scans, FTS) 2) 通过ROWID的表存取(Table Access by ROWID或rowid lookup) 3)索引扫

Python的三种基本数据类型

数字 int(整型) long(长整型),python对长整型没有限制,理论上可以无限大.python3后没有long了. float 字符串 加了引号的都是字符串. 单引号和双引号没有约束,尽量避免使用反斜杠转移 words = 'Hi,this\'s my buddy' words = "Hi,this's my buddy" 如果表达一段话的话只能用三个单引号或者双引号,否则会报错. 字符串拼接: In [1]: name = 'Edward' In [2]: age = '27

递归算法+sql三种分页

using Maticsoft.Common; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace Maticsoft.Web.cest { public partial class WebForm1 : Syste