设为首页收藏本站

融智技术学院

 找回密码
 注册

QQ登录

只需一步,快速开始

21天学通Oracle(第3版)
搜索
查看: 472|回复: 0

【数据库每日一问】Oracle是否有一个相当于SQL Server的表变量?

[复制链接]
MrLi 发表于 2013-10-11 18:00:03 | 显示全部楼层 |阅读模式
Oracle是否有一个相当于SQL Server的表变量?
问:在SQL Server中,你可以声明一个表类型的变量(DECLARE @ table表),这是在脚本运行,然后运行之后从内存中删除。
Oracle是否也有类似的功能吗?我坚持在硬盘驱动器使用创建/删除命令实现程序段?

答:是。
  1. Declare TABLE TYPE variables in a PL/SQL declare block. Table variables are also known as index-by table or array. The table variable contains one column which must be a scalar or record datatype plus a primary key of type BINARY_INTEGER. Syntax:

  2. DECLARE TYPE type_name IS TABLE OF (column_type | variable%TYPE | table.column%TYPE [NOT NULL] INDEX BY BINARY INTEGER;

  3. -- Then to declare a TABLE variable of this type: variable_name type_name;

  4. -- Assigning values to a TABLE variable: variable_name(n).field_name := 'some text'; -- Where 'n' is the index value


  5. 声明表类型变量,在一个PL / SQL声明块。表变量也被称为索引表或数组。表变量包含一列,它必须是一个标量或记录的数据类型加上一个主键类型BINARY_INTEGER。语法:

  6. - 然后申报表变量类型:变量名TYPE_NAME;
复制代码
参考文献http://www.iselfschooling.com/syntax/OraclePLSQLSyntax.htm
您可能还需要看一看在全局临时表
您需要登录后才可以回帖 登录 | 注册

本版积分规则

新突破电商

小黑屋|手机版|Archiver|融智技术学院 ( 京ICP备09018999号  

GMT+8, 2018-9-20 21:37

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表