Oracle中特殊的变量类型
- 声明一个TYPE: TYPE ref_cursor_name IS REF CURSOR [RETURN_TYPE];return_type子句是可省的,可以指定或不指定REF_CURSOR返回的数据类型。如果不指定,则游标是弱类型的。如果指定,则游标是强类型的。PL/SQL提供了一个预定义的称为SYS_REFCURSOR的弱REF CURSOR。
- 然后创建该类型的一个实例: cursor_variable ref_cursor_name ; sys_cursor SYS_REFCURSOR
- 接收select语句的结果:select employee_id, employee_name from employee into rec;
- 向数据库表中insert:insert into employee values rec;
- 更新表记录update: update empee set row rec where employee_id = rec .employee_id;
- 可以在delete语句中使用: DELETE FROM HR.JOB_HISTORY WHERE DEPART_ID =1 RETURN TYPE EMPLOEE_ID,EMPLOEE_NAME into rec;
操作 | 含义 | 语法 |
EXISTS | 检查集合中是否存在某个元素 | collection.EXISTS(index) |
COUNT | 返回集合中元素的个数 | collection.COUNT |
LIMIT | 返回VARRAY中的最大条目数 | collection.LIMIT |
FIRST | 返回集合中的第一个元素 | collection.FIRST |
LAST | 返回集合中最后一个元素 | collection.LAST |
NEXT | 返回集合中下一个元素 | collection.NEXT |
PRIOR | 返回集合中的上一个元素,如果不存在,则返回NULL | collection.PRIOR |
EXTEND | 扩展集合中元素的个数。不能用于关联数组或其他未被 初始化的集合 |
collection.EXTEND(给集合增加单个元素) collection.EXTEND(n) :给集合增加n个元素 collection.EXTEND(n,I):通过复制下标I的值,给集合增加n个元素 |
TRIM | 从集合结尾处删除元素 | collection.TRIM;从结尾处删除单个元素 collection.TRIM(n):从集合结尾处删除n个元素 |
DELETE | 从集合中删除元素 | collection.DELETE:从集合中删除所有元素 collection.DELETE(n):从集合中删除下标为n的元素 collection.DELETE(m,n):从集合中删除下标值位于m,n之间的元素 |
- EXTEND、TRIM和DELETE以外其他操作都返回值
- 根据环境所定义的语言,包含VARCHAR2下标的关联数组按字母顺序排列
- 如果集合为空(NULL),则FIRST和LAST返回NULL,它不包含于任何元素
- 如果集合中不存在下一个或上一个元素,则NEXT和PRIOR返回NULL
- EXTEND 和 TRIM 不能用于关联数组
- LIMIT可以用于限制添加至集合的值的个数,通常的语法是l select... into
关联数组 | 嵌套表 | VARRAY | |
下标类型 | 数字或字符串 | 数字 | 数字 |
声明为固定大小 | 否 | 否 | 是 |
允许稀疏下标 | 是 | 是 | 否 |
在数据库中存储 | 否 | 是 | 是 |
访问存储在集合中的各个元素 | N/A | 是 | 是 |
Oracle中特殊的变量类型的更多相关文章
- Oracle中Blob和Clob类型的区别与操作
Oracle中Blob和Clob类型 1.Oracle中Blob和Clob类型的区别 BLOB和CLOB都是大字段类型,BLOB是按二进制来存储的,而CLOB是可以直接存储文字的.其实两个是可以互换的 ...
- CG中的数据变量类型
CG 中的数据变量类型有三: float:高精度浮点值,通常是32位. half:中精度浮点值.通常是16位,范围是-60000至+60000,它适合存储UV坐标,颜色值等. fixed:低精度浮点值 ...
- 问题:oracle CLOB类型;结果:oracle中Blob和Clob类型的区别
BLOB和CLOB都是大字段类型,BLOB是按二进制来存储的,而CLOB是可以直接存储文字的.其实两个是可以互换的的,或者可以直接用LOB字段代替这两个.但是为了更好的管理ORACLE数据库,通常像图 ...
- Oracle的pl/sql变量类型
pl/sql定义 sql是结构化查询语言.sql是不是一个编程语言?编程语言一般都能够声明变量,写条件判断,循环.sql不具备这些特征,所有sql不是一门编程语言.我们在实际的开发中,有这种需要,把s ...
- Sqoop 将hdfs上的文件导入到oracle中,关于date类型的问题
近期的项目中,需要将hadoop运行完成的结果(存在于hdfs上)导入到oracle中,但是在用sqoop导入hdfs中的日期字段'2016-03-01'时,sqoop报错,说date类型必须为'yy ...
- oracle中数据类型对应java类型
地址: http://otndnld.Oracle.co.jp/document/products/oracle10g/102/doc_cd/Java.102/B19275-03/datacc.htm ...
- Python中的高级变量类型
高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...
- SQL SERVER中LIKE使用变量类型不同输出结果不一致解惑
一同事在写脚本时,遇到一个关于LIKE里面使用不同的变量类型导致查询结果不一致的问题,因为这个问题被不同的人问过好几次,索性总结一下,免得每次都要解释一遍,直接丢一篇博客岂不是更方便!其实看似有点让人 ...
- SQL SERVER中LIKE使用变量类型输出结果不同
前言:Sql Server中LIKE里面使用不同的变量类型导致查询结果不一致的问题,其实看似有点让人不解的现象背后实质跟数据类型的实现有关. 一.我们先来创建示例演示具体操作 CREATE TABLE ...
随机推荐
- 1.PHP与Web页面的交互
一.概览: PHP是一种专门用于Web开发的服务器端脚本语言.从这个描述可以知道,PHP要打交道的对象主要有服务器(Server),和基于Web的HTML(超文本标识语言).使用PHP处理Web应用时 ...
- redis+thinkphp5的注册、登陆、关注基础例子
最近初步接触redis,结合thinkphp5与redis,写了一个用户注册的基础例子,用于学习. 这个例子是结合了兄弟连的redis视频,最后两节的内容写的:https://study.163.co ...
- 手动卸载的vs2010
手动卸载的vs2010: 环境:Win7 卸载工具:IobitUninstaller(绿色版)//个人推荐,比较强大好用按照以下顺序:1.Microsoft .NET Framework 4 框架 ...
- JavaScript:我总结的数组API
栈/队列 数组es3: pop删除最后一项(栈) shift删除第一项(队列) push增加到最后(栈) unshift增加到最前(队列) reverse翻转 join转字符串 slice截取(切片) ...
- Linux上Oracle18C 系统表空间大小调整 adjust the system tablespace for oracle18c on linux
1. 测试过程中,发现 system tablespace is not enough, need to adjustment 初步解决方案: 查询一下 system tablespace的大小 S ...
- Python来袭,教你用Neo4j构建“复联4”人物关系图谱!
来源商业新知网,原标题:Python来袭,教你用Neo4j构建“复联4”人物关系图谱!没有剧透! 复仇者联盟 之绝对不剧透 漫威英雄们为了不让自己剧透也是使出了浑身解数.在洛杉矶全球首映礼上记者费尽心 ...
- 转载(TCPClient 建立连接和断开连接函数)
public bool networkbuild()//建立端口连接 { if (client == null) { try { client = new TcpClient(networkip, n ...
- Java基础第一天(标识符、变量)
一.标识符 Java对各种变量.类.方法命名时的字符序列. 凡自己可以起名字的地方都叫标识符. 标识符特点: 1.26个英文字母大小写,0~9,$,_ 组成. 2.数字不可以做开头. 3.不可以使用关 ...
- Handling Text in Python 相关命令
s.isalpha()意思就是是不是字母,s.isdigit()意思就是是不是0-9,s.isalnum()意思就是是不是由字母和数字组成.
- 【LeetCode刷题系列 - 003题】Longest Substring Without Repeating Characters
题目: Given a string, find the length of the longest substring without repeating characters. Example 1 ...