ORA-29474: DBMS_SQL.OPEN_CURSOR failed. security_level of 0 is not allowed

文档解释

ORA-29474: DBMS_SQL.OPEN_CURSOR failed. security_level of 0 is not allowed

Cause: Security level of 0 is specified with DBMS_SQL.OPEN_CURSOR.

Action: Specify a valid security level.

.’
‘. 解释:

ORA-29474:DBMS_SQL.OPEN_CURSOR失败,不允许安全级别为0。

意思是您试图使用0安全级别来打开游标,这不被允许。游标必须以安全级别1打开。

下面的例子展示如何使用安全级别1来打开游标:

–Declare variables
declare
v_stmt varchar2(5000);
v_cursor integer;
begin
–Construct statement
v_stmt := ‘select * from emp’;
— Security level of 1 is used when opening the cursor
v_cursor := dbms_sql.open_cursor(1);
–Parse the statement
dbms_sql.parse(v_cursor, v_stmt, dbms_sql.native);
–Open Cursor
dbms_sql.close_cursor(v_cursor);
end;
/

正确的操作步骤是:

1. 声明变量
2. 构建声明
3. 使用安全级别1来打开游标
4. 解析声明
5. 打开游标
6. 关闭游标. ‘

你可能感兴趣的