PL/SQL 函数返回类型整数:无效标识符

Posted

技术标签:

【中文标题】PL/SQL 函数返回类型整数:无效标识符【英文标题】:PL/SQL function return type integer : Invalid Identifier 【发布时间】:2014-05-09 04:39:43 【问题描述】:

我在一个名为 func.sql 的文件中有一个名为 get_pid 的函数。函数get_id 需要一个 输入:given_price Parts.price%type 并返回一个整数。

为了调用这个函数,我创建了一个名为main.sql 的新文件。然后我登录到sqlplus并以这种方式调用main:

SQL> @Q1_main select get_pid(400) from dual * ERROR at line 1: ORA-00904: "GET_PID": invalid identifier

我是否正确调用了该函数?可能有什么问题,我查看了有关此主题的其他问题,但我无法弄清楚我做错了什么。

【问题讨论】:

你的函数编译了吗? @EatÅPeach 我不这么认为,我该怎么做? 运行 main.sql 的方式相同。只需运行@func.sql @EatÅPeach 好的,谢谢一百万。关于如何编译它以给出编译错误的任何想法? 只需在 sql 提示符下运行您的脚本。如果有任何编译错误,运行show errors,它会在你的脚本中显示错误。 【参考方案1】:

尝试告知你的函数在哪里的方案名称。

比如用户名(schema)是dev,那么你就得这样试试。

从 dual 中选择 dev.get_pid(400)。

【讨论】:

【参考方案2】:

当您收到提示时,您始终必须使用方案名称“。”你的功能/程序。

【讨论】:

在阅读此答案时,不清楚您是否试图传达需要在函数或过程名称之前添加方案名称和句点。

以上是关于PL/SQL 函数返回类型整数:无效标识符的主要内容,如果未能解决你的问题,请参考以下文章

错误:PL/SQL:ORA-00904::标识符无效

ORA-00904 PL/SQL 中的标识符无效

PL/SQL JAVA ORACLE 错误 ORA-00904: 标识符无效

PL/SQL 函数中的 XmlRoot、XmlElement、InsertChildXml 给出 PLS-00201 必须声明标识符

在 PL/SQL 中引用动态 SQL 的标识符

触发器中的标识符无效