pl/sql中的表类似于c语言中的数组。
1. 定义表类型的语法如下:
TYPE tabletype IS TABLE OF type INDEX BY BINARY_INTEGER;
type是预定义的标量的类型,或者是通过%type指向标量的类型的引用。一个简单的例子:
TYPE t_charTable IS TABLE OF VARCHAR2(10) INDEX BY BINARY_INTEGER;
2. 引用的语法如下。
tableName(index);
index为binary_integer变量或者是可以转换成binary_integer变量的表达式。
表应用的一个实际的例子:
declare
type t_table is table of varchar2(10) index by BINARY_integer;
MyTab t_table;
begin
MyTab(1) := 'A';
MyTab(2) := 'B';
MyTab(3) := 'C';
DBMS_OUTPUT.PUT_LINE('First index:'||' '|| mytab(1) ||' ');
end;
3. pl/sql表的特点。
。表大小的限制是由binary_integer类型的取值范围决定的。
。表中的元素不需要按照特定的次序排列。因为它们不是连续的存在内存中,所以可以按任何顺序插入。
版本2.3之后,表允许存储记录的表。如下面的代码:
DECLARE
TYPE t_StudentTable IS TABLE OF students%ROWTYPE INDEX BY BINARY_INTEGER;
v_Students t_StudentTable;
BEGIN
SELECT * INTO v_Students(1100)
FROM students
WHERE id=1100;
DBMS_OUTPUT.PUT_LINE( v_Students(1100).OUUSRNM);
END;
然后可以以 table(index).field 来对其内容进行引用。
表还有一些属性以方便表的使用。如 count、first、last、exists等。
分享到:
相关推荐
PL/SQL数据库学习笔记 PL/SQL是一种高级的程序语言,主要用于Oracle数据库管理系统中。下面是PL/SQL数据库学习笔记的知识点总结。 一、基本原则 *瀑布模型:需求分析→设计(概要设计,详细设计:SQL语句,变量...
### PL/SQL学习笔记4 —— 集合与成员函数 #### 一、PL/SQL 表(索引表) 在PL/SQL中,**索引表**(也称为**PL/SQL表**)是一种非常有用的结构,它类似于数组但具有更多的灵活性。这种表是非持久化的,即它们不会...
PL/SQL有三种集合 联合数组 嵌套表 可变数组 联合数组详解: 什么是数组?数组有什么特点 数据是线性存放的,在内存中地址是连续的 可以用索引来访问 定义联合数组? 联合数组不需要定义长度,他能容纳的元素最大...
总的来说,“PL/SQL超级笔记”应该涵盖了从基本语法到高级特性的全面教程,通过学习,新手可以逐步掌握如何使用PL/SQL进行数据库编程,从而更好地管理和操作Oracle数据库。配合"oracle_ppt"中的PPT材料,学习效果会...
在PL/SQL编程中,游标是处理查询结果集的重要工具。它们允许程序逐行处理结果,而不是一次性加载所有数据,这对于大型数据集尤其有用,因为它可以节省内存并提高性能。下面将详细解释游标的基本概念、分类以及如何在...
在PL/SQL的学习中,分区是数据库管理大型数据集的一种高效方法,特别是在处理大数据量时。本篇笔记主要探讨了何时应该使用分区以及Oracle支持的分区类型。 首先,当面对超过2GB的大数据表时,分区是十分必要的。这...
在PL/SQL编程中,存储过程和函数是关键的组件,它们允许我们将可重用的代码逻辑存储在数据库中,以便于管理和调用。本文主要探讨了存储过程、函数以及程序包的概念,特点,创建方法,执行方式,权限管理以及参数处理...
### PL/SQL听课笔记 #### 一、PL/SQL简介 **PL/SQL**(Procedural Language for SQL)是一种专门为Oracle数据库设计的过程化语言扩展。它是在标准SQL基础上增加了一系列高级编程特性,如变量、控制结构、函数、...
本文将深入探讨从"SQL,PL/SQL学习笔记"中提取的关键知识点,帮助编程人员更好地理解和运用这两种语言。 首先,我们关注SQL并行查询。通过`ALTER SESSION ENABLE PARALLEL DMl`,我们可以开启会话的并行DML操作,这...
PL/SQL,全称Procedural Language/Structured Query Language,是Oracle数据库的一种扩展语言,用于处理数据库中的数据和实现复杂的业务逻辑。以下是对PL/SQL的基础知识进行的详细阐述: 1. **匿名块与命名块**: ...
### PL/SQL 存储过程知识点详解 #### 1. PL/SQL 存储过程概述 PL/SQL(Procedure Language for SQL)是...通过这些基本概念的学习,可以帮助开发者更好地掌握 PL/SQL 的使用技巧,提高数据库应用程序的效率和性能。
支持数组(PL/SQL TABLE)和关联数组(PL/SQL INDEX BY TABLE),可以存储多个相同类型的元素。 7. **记录类型(RECORD)**: 用户自定义的数据结构,可以包含不同类型的字段,类似于其他编程语言中的结构体或类...
【JAVA与Sql学习笔记】 在Java编程中,与SQL数据库的交互是不可或缺的一部分。这篇学习笔记主要关注如何在Oracle数据库中使用PL/SQL的FORALL语句进行批量操作,以及如何利用批绑定(Bulk Binding)来提升性能。此外...
从给定的Oracle PL-SQL学习笔记中,我们可以提炼出一系列关键的知识点,涉及PL-SQL的基本语法、变量声明与赋值、数据类型、表操作、记录与集合处理等核心概念。下面将对这些知识点进行详细阐述: ### 1. 变量声明与...
### Oracle笔记精炼知识点 #### 一、Oracle基础概念与数据类型 - **建表语句**: `CREATE TABLE` 用于创建新表。 - 示例:`CREATE TABLE users (字段, 字段...);` - **注释**:字段应具体指定数据类型。 - **...
根据给定的文件信息,以下是对“PL_SQL个人学习笔记”的详细解读与扩展知识点: ### PL_SQL基础概念 PL/SQL(程序化SQL)是一种强大的过程化编程语言,用于增强Oracle数据库的功能。它将SQL命令与传统的编程语言...
**PL/SQL程序设计简介** PL/SQL是Oracle数据库中的一种...本笔记版详细阐述了其基本概念、结构和使用方法,是学习和掌握PL/SQL的宝贵资源。通过深入学习,开发者能够更好地利用PL/SQL进行数据库编程,提升工作效率。
在PL/SQL中,可以使用SQL的Data Manipulation Language(DML)部分,如INSERT、UPDATE、DELETE和SELECT,但不能直接使用Data Definition Language(DDL)部分,如CREATE TABLE等。如果需要在PL/SQL中执行DDL语句,...
综上所述,这个资料包为初学者提供了全面的PL/SQL学习资源,从基础概念到实际操作,包括了理论讲解、实例演示和考试准备,对于想要深入理解并掌握PL/SQL的人来说是一份宝贵的资料。通过阅读和实践这些内容,不仅可以...