【问题标题】:Function in SQL PLUSSQL PLUS 中的函数
【发布时间】:2017-11-27 14:40:44
【问题描述】:

谁能帮我找出错误!

SQL>  CREATE OR REPLACE FUNCTION get_pri
   2    (name MENU.ITEM_NAME%TYPE,QUANTITY IN NUMBER) RETURN NUMBER IS
   3    pri MENU.ITEM_PRICE%TYPE ;
   4  BEGIN
   5    SELECT ITEM_PRICE
   6    INTO   pri
   7    FROM   MENU
   8    WHERE  ITEM_NAME = name;
   9    RETURN  (pri*QUANTITY) ;
   10 END get_pri;
   11 /

   Warning: Function created with compilation errors.

【问题讨论】:

  • show error; 看看它说了什么
  • 在您过分担心这个特定功能之前,最好熟悉显示编译错误。

标签: oracle plsql sqlplus


【解决方案1】:

功能代码显示正确。

所以,我们不得不怀疑表和列的引用。您尝试在其中编译此函数的架构中是否有表MENU?如果它在另一个模式中,则必须在表名前加上模式名称。

那么 - 表 MENU 是否有列 ITEM_NAMEITEM_PRICE

当然,我的架构中没有表 MENU。在我创建了一个包含两列ITEM_NAMEITEM_PRICE 之后,我能够毫无错误地编译您的函数,因此几乎可以肯定这是问题所在。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-17
    • 2011-07-04
    • 1970-01-01
    • 1970-01-01
    • 2017-11-10
    • 2012-11-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多