Cur*_*ous 3 oracle types plsql
Pl/SQL:意图:我的意图是通过使用键作为employee_id来访问定义为下面的光标的雇员元组对象。
问题:我创建了一个游标 - *l_employees_cur* 并想要创建如下类型 *l_employees_t* 的类型表,如下所示,但编译器抱怨说PLS-00315 实现限制不支持表索引类型。
CURSOR l_employees_cur
IS
SELECT employee_id,manager_id,first_name,last_name FROM employees;
type l_employees_t
IS
TABLE OF l_employees_cur%rowtype INDEX BY employees.employee_id%TYPE;
Run Code Online (Sandbox Code Playgroud)
的定义employees.employee_id是:
EMPLOYEE_ID NUMBER(6) NOT NULL
Run Code Online (Sandbox Code Playgroud)
为什么我不能这样做?还是我做错了什么?
关联数组
关联数组(以前称为 PL/SQL 表或索引表)是一组键值对。每个键都是一个唯一索引,用于通过语法variable_name(index)来定位关联的值。
索引的数据类型可以是字符串类型,也可以是PLS_INTEGER。索引按排序顺序存储,而不是按创建顺序存储。对于字符串类型,排序顺序由初始化参数NLS_SORT和NLS_COMP决定。