【问题标题】:Error PLS-00201 while trying to create table type in Oracle尝试在 Oracle 中创建表类型时出现错误 PLS-00201
【发布时间】:2021-07-31 02:19:29
【问题描述】:

当我在 Oracle 19c 中运行此代码时:

CREATE TYPE t_my_type IS TABLE OF my_table.my_col%TYPE;

我有这个错误:

Type t_my_type compiled

LINE/COL  ERROR
--------- -------------------------------------------------------------
0/0       PL/SQL: Compilation unit analysis terminated
1/23      PLS-00201: identifier 'my_table.my_col' must be declared
Errors: check compiler log

为什么说必须声明?

【问题讨论】:

  • 您只能在 pl/sql 对象中使用 %type 和 %rowtype。因此,您可以在 plsql 包中定义您的类型,例如

标签: sql oracle types oracle19c


【解决方案1】:

在这里找到答案:https://community.oracle.com/tech/developers/discussion/3582858/pls-00201-when-declaring-table-type

在这种情况下,您不能使用 %TYPE。您必须使用一些预定义的 Oracle 类型,例如 NUMBER 或创建一个集合。

例子:

CREATE TYPE t_my_type IS TABLE OF NUMBER;

【讨论】:

    猜你喜欢
    • 2017-10-31
    • 1970-01-01
    • 2016-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-26
    • 1970-01-01
    相关资源
    最近更新 更多