Plsql 创建一个表索引并填充emp中的行,然后循环并打印它们
按表创建索引并填充emp中的行,然后循环并打印它们 嗨,有人能理解这个问题吗?请给我解决这个问题的建议 集合是具有相同数据类型的有序元素组 可通过下标/索引访问。Oracle PL/SQL支持 三种不同类型的收藏Plsql 创建一个表索引并填充emp中的行,然后循环并打印它们,plsql,oracle11g,Plsql,Oracle11g,按表创建索引并填充emp中的行,然后循环并打印它们 嗨,有人能理解这个问题吗?请给我解决这个问题的建议 集合是具有相同数据类型的有序元素组 可通过下标/索引访问。Oracle PL/SQL支持 三种不同类型的收藏 Index-by tables or Associative array Nested table Variable-size array or Varray 下面是一个示例,说明如何通过表定义索引,并使用Emp表中的行填充索引,并相应地打印它们 DECLARE CURSO
Index-by tables or Associative array
Nested table
Variable-size array or Varray
下面是一个示例,说明如何通过表定义索引,并使用Emp
表中的行填充索引,并相应地打印它们
DECLARE
CURSOR c_emp is
select name from emp;
TYPE c_list IS TABLE of emp.name%type INDEX BY binary_integer;
name_list c_list;
counter integer :=0;
BEGIN
FOR n IN c_emp LOOP
counter := counter +1;
name_list(counter) := n.name;
dbms_output.put_line('Employee('||counter|| '):'||name_list(counter));
END LOOP;
END;
/
请参阅以及,以获取更多信息。无论如何,谢谢,我不知道如何开始。请阅读Oracle文档/教程。这是我能给出的最好的建议。我认为我们必须使用下面的方法来解决这个问题:在emp(ename)表空间上创建索引emp_ename用户压缩1;对吗???还是错了??谢谢rahul u先生帮助aloti尝试这么做,但它需要15个声誉。这与varray Creation的情况相同。我不好,我对在表上创建索引感到困惑,并给出了错误的答案。实际上,您正在谈论Oracle中的集合,是的,varray也是一种集合类型,它存储相同类型元素的固定大小顺序集合,但创建不同于表索引()。再次查看编辑后的答案。