我使用 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 不被识别为有效标识符?我必须导入它吗?
最佳答案
这可能是权限问题。 EXECUTE on DBMS_RANDOM is not granted by default ,因此您需要一个 DBA 用户来授予您 EXECUTE 权限。
grant execute on dbms_random to << your_username >>;
虽然安装是默认设置,但也有可能未安装软件包。同样,您需要 DBA 用户进行检查,如果需要,请运行安装脚本。
关于oracle - 不能使用 DBMS_RANDOM 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52586213/