ORA-56715: string resource plan contains a reserved word

文档解释

ORA-56715: string resource plan contains a reserved word

Cause: The specified plan name is prefixed with a reserved prefix such as FORCE or SCHED.

Action: Do not prefix resource plan name with FORCE or SCHED.

ORA-56715 错误指明要使用的资源计划中包含了一个预留关键词。

官方解释

ORA-56715:字符串资源计划中包含保留的关键字。

该错误一般会出现在调用DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE()函数时,该函数用于创建一个新的资源计划指令,该函数接受一个字符串作为参数,该字符串包含了资源计划指令的定义,如果其中包含了数据库中任何一个预留关键字(如:VARCHAR2,NUMBER,DATE,TIMESTAMP),则会报出此错误。

常见案例

此错误一般会出现在根据用户传递的参数创建T_Test表时,如:

CREATE TABLE T_Test (Id Number,Name VARCHAR2(20),CreateTime Timestamp)

在这个例子中,Id, Name和CreateTime都是数据库中的预留关键字,会导致ORA-56715错误发生。

正常处理方法及步骤

1. 检查定义资源计划时使用的字段,确保没有使用任何预留关键字;

2. 如果存在预留关键字,可以将其更改为其他词语,比如将VARCHAR2替换为CHAR;

3. 使用DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE()函数检查其参数中资源计划中是否包含预留关键字;

4.如果有预留关键字,应当将其删除或更改后再次尝试;

5.可以在使用DBMS_RESOURCE_MANAGER时使用触发器,以确保执行DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE()时所传递的参数中不包含预留关键字。

你可能感兴趣的