【发布时间】:2016-01-25 11:43:32
【问题描述】:
我想在我的函数中从某个网页获取 HTML 内容。我读到我可以用 PLSQL 中的 UTL_HTML 包来做到这一点。于是我在项目中做了如下代码:
v_webcontent := utl_http.request(v_weblink);
这里的 v_webconent 和 v_weblink 是之前声明的。在 de 函数中运行它会产生一个 PLSQL 异常:PLS-00201: identifier 'UTL_HTTP' must be declared我猜这个问题是因为包不可用(来自此链接:same error message)。
我听从了建议。所以我在sql developer中创建了一个新的数据库连接作为SYSTEM角色(SYS没有工作,它说我只能使用SYSDBA或SYSOPER登录,但两者都不会使用我用数据库创建的标准密码)。然后我在上面的链接中输入了代码。
GRANT EXECUTE ON SYS.UTL_HTTP TO [database];
我创建的用户名为“数据库”。它首先给了我一个没有 [] 方括号的错误。表或视图不存在,因此我将括号括起来。现在它给出了错误:
Error starting at line : 1 in command -
GRANT EXECUTE ON SYS.UTL_HTTP TO [database]
Error report -
SQL Error: ORA-00987: missing or invalid username(s)
00987. 00000 - "missing or invalid username(s)"
*Cause:
*Action:
所以我不知道如何解决这个问题。在上面的链接中,OP说他遇到了另一个错误,所以我也检查了我是否没有同样的问题。我输入了:
SELECT * FROM dba_objects WHERE object_name='UTL_HTTP'
它返回了 4 个条目。拥有者:SYS、SYS、PUBLIC 和 APEX_040000。
有人可以帮助我吗?我是否需要以 SYS 身份登录并使用什么密码?
【问题讨论】:
标签: plsql oracle-sqldeveloper reserved-words settings