用户不存在Oracle SQL开发人员

时间:2016-11-24 15:49:37

标签: sql oracle function

请原谅我,如果这是一个简单的修复,我对SQL很新,只是在周二开始学习它。所以我正在试验函数并做了一个简单的测试,例如

CREATE FUNCTION CHINOOKHW.AddPara(@a1 int, @b2 int)
RETURN INT
BEGIN AS
  DECLARE @C3 INT = SUM(A1, B2)
  RETURN @C3
END
GO
CHINOOKHW.AddPara(1, 2);

但我收到了错误

Error report -
ORA-01435: user does not exist
01435. 00000 -  "user does not exist"
*Cause:    
*Action:

我已将用户定义为

CREATE USER chinookhw
IDENTIFIED BY p4ssw0rd;

虽然我知道这通常是不好的做法,但我甚至给了我的用户所有访问权限

GRANT ALL PRIVILEGES to chinookhw IDENTIFIED BY p4ssw0rd;

我不确定这是否相关,但我已经连接到chinook数据库了 https://chinookdatabase.codeplex.com/

我从系统数据库用行

建立了另一个连接
GRANT DBA TO chinook;
GRANT DBA TO chinookhw;
commit;

谁能告诉我我做错了什么?我已经在这几个小时没有修复了。提前谢谢

1 个答案:

答案 0 :(得分:0)

请尝试以下操作 - 请注意它未指定要在其下创建该功能的用户。还要注意语法是PL / SQL而不是T-SQL或者你在其中写的是什么:

CREATE FUNCTION AddPara(a1 integer, b2 integer)
RETURN INTeger
AS
BEGIN
  return A1 + B2;
END;
/