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 回答