grant execute on dbms_crypto to system * ERROR at line 1: ORA-00942: table or view does not exist怎么解决
时间: 2023-12-10 11:41:30 浏览: 132
Mysql:The user specified as a definer ('xxx@'%') does not exist的解决方案
5星 · 资源好评率100%
这个错误提示表明当前用户(可能是system)没有DBMS_CRYPTO包的执行权限,或者包不存在。
首先,确认该包是否存在于数据库中:
```
SELECT object_name, object_type
FROM dba_objects
WHERE object_name = 'DBMS_CRYPTO';
```
如果结果集为空,则说明该包并不存在,你需要安装该包。如果结果集中有该包,则需要授予执行权限给当前用户:
```
GRANT EXECUTE ON DBMS_CRYPTO TO system;
```
请注意,如果当前用户不是SYS或者拥有DBMS_CRYPTO权限的用户,则需要使用SYS用户或者该用户授予EXECUTE任何包的权限。
另外,如果你使用的是Oracle Database 11g Release 1或更早版本,则DBMS_CRYPTO包可能不存在。在这种情况下,你需要升级到Oracle Database 11g Release 2或更高版本才能使用该包。
阅读全文