ORA-39954: DEFERRED is required for this system parameter

文档解释

ORA-39954: DEFERRED is required for this system parameter

Cause: The ALTER SYSTEM command for PLSQL_WARNINGS did not include the keyword, DEFERRED.

Action: Change the command to use the keyword, DEFERRED.

ORA-39954:DEFERRED参数需要在此系统参数上使用。

官方解释

当为某个系统参数或系统初始化参数指定一个值时,Oracle数据库会报错ORA-39954。在被使用的参数的文档中,你可以发现一个以DEFERRED开头的提示。这意味着,参数的值被指定到了一个无效的状态,只有把它改成DEFERRED,才可以让它正确运行。

常见案例

当使用CREATE_PKG_SYS_PRIVS参数在DBA_SYS_PRIVS视图中分配系统权限时,可能会出现ORA-39954: DEFERRED is required for this system parameter的错误,因为CREATE_PKG_SYS_PRIVS参数默认使用DEFERRED模式,所以当分配系统权限时,一定要使用DEFFERED模式。

一般处理方法及步骤

1. 检查有没有指定错误的参数的值,如果存在,需要将其改为DEFERRED模式。

2. 重启数据库,检查系统参数是否已正确设置为DEFFERED模式。

3. 执行分配权限操作,看是否正确执行,如果有任何异常,需要立即检查系统参数是否正确设置。

你可能感兴趣的