0
我定义我的表用户类型:如何声明和通过用户输入表中的Oracle SQL Developer
create or replace TYPE My_Type AS OBJECT
(
Field1 NVARCHAR2(20),
Field2 NVARCHAR2(20)
);
create or replace TYPE My_Type_Table
AS TABLE OF My_Type;
然后我定义的存储过程:
PROCEDURE sp_GetSomething
(
table_in My_Type_Table,
cur_our SYS_REFCURSOR
);
我是能够成功地把这种程序,但不是来自Sql Develoder。 我不知道如何定义和传递表类型的输入参数。 我试图用这样的事情,但它不工作:
DECLARE
table_in My_Type_Table;
cur_our SYS_REFCURSOR;
BEGIN
table_in := My_Type_Table(My_Type('field 1 value', 'field 2 value'));
package.sp_GetSomething(
table_in => table_in ,
cur_our => cur_our
);
:cur_our := cur_our ;
END;
和错误是:
> ORA-06550: line 11, column 20:
> PLS-00382: expression is of wrong type
请指教。