0

私はこのタイプの定義を持っています:

Create Type "T1" as Table of Varchar2(10);/

これは実行されました。

PL / SQLでT1型変数を使用する方法は?私は次の手順を持っています:

Create or replace PROCEDURE P1
AS
  P_K   T1;
BEGIN
  SELECT P_K_J INTO P_K FROM SOME_TABLE WHERE NAME='JONES' ;
  FOR I IN P_K.FIRST..P_K.LAST LOOP
    DBMS_OUTPUT.PUT_LINE('THE VALUES OF P_K ARE' || P_K(I));
  END LOOP;
END P1;

これにより、次のエラーが発生します。

エラー:
3/5 PL / SQL:項目は無視されます
3/5 PLS-00311:「T1」の宣言が不完全または不正な形式

私の質問は、型の変数をインスタンス化する方法です。T1

4

1 に答える 1

1
Create Type "T1" as Table of Varchar2(10);
/
Create or replace PROCEDURE P1
AS
  P_K   T1;
BEGIN

  SELECT P_K_J BULK COLLECT INTO P_K FROM SOME_TABLE WHERE NAME='JONES';

  FOR I IN P_K.FIRST..P_K.LAST LOOP
    DBMS_OUTPUT.PUT_LINE('THE VALUES OF P_K ARE' || P_K(I));
  END LOOP;

END P1;
/
于 2012-08-06T09:54:22.023 に答える