--子TYPE
CREATE OR REPLACE TYPE RSS_STR_OBJECT_TYPE IS OBJECT
(
str_value varchar2(200)
);
grant Execute on rssdata.RSS_STR_OBJECT_TYPE to rssopr;
grant execute on rssdata.RSS_STR_OBJECT_TYPE to r_rssdata_Exec;
--父TYPE代码
CREATE OR REPLACE TYPE RSS_STR_OBJECT_TYPE_LIST IS TABLE OF rssdata.RSS_STR_OBJECT_TYPE
grant Execute on rssdata.rss_str_object_type_list to rssopr;
grant execute on rssdata.rss_str_object_type_list to r_rssdata_Exec;
2.简单的存储过程
PROCEDURE rss_test_type_list_pro(in_rss_str_object_type_list IN rss_str_object_type_list,
out_retcode OUT Varchar2,
out_message OUT Varchar2) IS
i NUMBER;
begin
--修改对计数器赋值应该放到LOOP外面
i := in_rss_str_object_type_list.first;
LOOP
INSERT INTO TEST
(D)
VALUES
(in_rss_str_object_type_list(i).str_value);
EXIT WHEN i = in_rss_str_object_type_list.last;
i := in_rss_str_object_type_list.next(i);
END LOOP;
EXCEPTION
WHEN OTHERS THEN
out_retcode := '9';
out_message := '[rss_test_type_list_pro]错误信息' || SQLCODE || ',' ||
SUBSTR(SQLERRM, 1, 120);
END rss_test_type_list_pro;