4

プロシージャまたは関数で宣言されたOracleRECORDTYPEはローカルであるため、ローカルでのみ使用される可能性があります。グローバルであり、DBのすべてのプロシージャと関数でグローバルに使用される可能性のあるRECORD TYPEを宣言するにはどうすればよいですか?

4

2 に答える 2

5

Record型を個別のスキーマオブジェクトとして作成することはできないため、Record型を公開するために、型は通常、パッケージ仕様で宣言されるか、パッケージ本体はそのパッケージのスコープでのみ使用可能になります。

于 2012-10-08T10:14:01.267 に答える
3

パッケージでオブジェクトタイプを使用する基本的な例。

CREATE OR REPLACE TYPE test_rec IS OBJECT
(
 ID             VARCHAR2(30)
 ,TYPE               VARCHAR2(30)
);
/

CREATE OR REPLACE TYPE test_NT AS TABLE OF test_rec;
/

declare
 v_test_NT   test_NT;

begin
select test_rec (id
                ,type
                 )
        BULK COLLECT INTO v_test_NT  
 FROM test ;

--use it as you want

end;
于 2012-10-08T10:24:14.983 に答える