无法使用DBMS_RANDOM函数

时间:2018-10-01 07:14:37

标签: oracle oracle11g

我使用Oracle Database 11g,并且有一个相当简单的代码:

set serveroutput on format wrapped;
declare
result_ clob;
begin
result_ := dbms_random.string('P', 10);
dbms_output.put_line(result_);
end;

当我尝试运行它时,出现一条错误消息:

identifier 'DBMS_RANDOM' must be declared

为什么 dbms_random 无法识别为有效标识符?我必须导入吗?

1 个答案:

答案 0 :(得分:3)

这可能是权限问题。 EXECUTE on DBMS_RANDOM is not granted by default,因此您需要一个DBA用户才能授予您EXECUTE特权。

grant execute on dbms_random to << your_username >>;

尽管默认情况下是安装程序,但外部没有机会安装该程序包。同样,您需要DBA用户进行检查,并且是否需要运行安装脚本。