【发布时间】:2017-04-05 09:18:21
【问题描述】:
我必须创建一个包含 2 个字段的集合,然后创建一个具有该集合类型的变量作为参数的过程。 如果我只有 2 个字段,我怎么能创建一个集合:
TYPE an_array IS VARRAY(10) OF varchar2(20);
例如列:id、name; (不知道怎么插入)。
然后,我必须创建程序,
CREATE OR REPLACE PROCEDURE test_proc (p_array an_array) AS
但我必须使用我的列在此过程中执行某些操作。 例如,我考虑一个表 employees (id number, name varchar2(20)); 我的程序应该是这样的:
CREATE OR REPLACE PROCEDURE test_proc (p_array an_array) AS
CURSOR cs IS select * from employees;
v_row employees%ROWTYPE;
BEGIN
OPEN cs;
LOOP
FETCH cs into v_row ;
EXIT WHEN cs%NOTFOUND;
IF (mod (v_row.id,2 ) = 0 ) then
THE ID FIELD FROM MY COLLETION := v_row.id;
THE NAME FIELD FROM MY COLLECTION := v_row.name;
END LOOP;
CLOSE cs;
END;
`
【问题讨论】: