Oracle SQL PLS-00103 创建包体时出错
Posted
技术标签:
【中文标题】Oracle SQL PLS-00103 创建包体时出错【英文标题】:Oracle SQL PLS-00103 Error when creating the package body 【发布时间】:2012-05-03 17:09:52 【问题描述】:我收到以下错误:
以下内容的创建包操作不成功 原因:第 41 行的错误:PLS-00103:遇到符号 预期以下之一时的“文件结尾”:结束而不是编译指示 最终实例化顺序覆盖静态成员构造函数映射
代码如下:
CREATE OR REPLACE PACKAGE BODY update_quantity
IS
PROCEDURE set_new_quantity(product_idProduct IN NUMBER, order_idOrder IN NUMBER, newquantity IN NUMBER)
IS
BEGIN
UPDATE Order_item o
SET o.quantity = newquantity
WHERE o.product_idProduct = product_idProduct
AND o.order_idOrder = order_idOrder;
--EXCEPTION
--WHEN NO_DATA_FOUND THEN
--RAISE_APPLICATION_ERROR (-20100, 'No such quantity or order');
END set_new_quantity;
FUNCTION FUNCTION existing_quantity_f(product_idProduct IN NUMBER, order_idOrder IN NUMBER) RETURN NUMBER
IS
existing_newquantity NUMBER(4);
BEGIN
SELECT o.quantity INTO existing_newquantity
FROM ORDER_item o
WHERE
o.product_idProduct = product_idProduct
AND o.order_idOrder = order_idOrder;
RETURN (existing_newquantity);
--EXCEPTION
-- WHEN NO_DATA_FOUND THEN
--RAISE_APPLICATION_ERROR (-20100, 'No such employee or project');
END existing_quantity_f;
我已经注释掉了异常,最初认为这可能是一个问题,但错误仍然存在。
有人可以帮忙吗?
【问题讨论】:
【参考方案1】:在包体的最后需要如下语句
END update_quantity;
【讨论】:
以上是关于Oracle SQL PLS-00103 创建包体时出错的主要内容,如果未能解决你的问题,请参考以下文章
在oracle sql中,我在删除插入表后创建但收到此错误PLS-00103:遇到符号“DELETE”[重复]
Sql 过程如何使用 IN OUT 返回多个值:PLS-00103 错误