【发布时间】:2015-08-22 16:30:25
【问题描述】:
我有一个函数,我正在尝试编译并得到一个错误为Error: ORA-00955: name is already used by an existing object。我真的不知道这个错误并尝试搜索这个问题但没有找到任何解决方案。我不知道这是否与任何授予权限有关,但我的架构表没有权限问题。
create or replace FUNCTION "AK_CHECK"
-- PUBLIC
(ID Number) RETURN Number
IS
TYPE_ID Number := 0;
SUCCESS Number := 0;
S Number := 0;
BEGIN
SELECT ACTIVE(ID) + MANUAL(ID) INTO S FROM DUAL;
CASE S
WHEN 2 THEN
SELECT TYPE INTO TYPE_ID
FROM SALE_SUPPLY KD
WHERE KD.KPI_DEF_ID = ID;
END CASE;
END AK_CHECK;
【问题讨论】:
-
你正在使用
create and replace,所以如果该函数已经存在,那么它将被替换。因此,还有其他原因导致问题,而不是函数名称。在SQL*Plus中编译,并使用SHOW ERRORS,它会显示准确的行号和引发错误的对象。编辑您的问题并添加复制粘贴完整的错误堆栈。
标签: sql oracle function privileges grant