【发布时间】:2014-11-29 08:12:49
【问题描述】:
创建或替换过程 kwp_SCMP_KillSessionTEST 是
v_sql VARCHAR2(60); Cnt 整数:= 0; 光标 cur 是 select t.sql_id, t.detail, t.sid from TESTPROCE t;
开始
for i 在当前循环中
begin
cnt := cnt + 1;
select distinct S.SID, S.SERIAL#, s. MACHINE, s.SQL_ID, s.EVENT
from V$SESSION S , TESTPROCE
where s.username <> 'SYS'
and s.sql_id = t.sql_id
and s.type <> 'BACKGROUND';
v_sql := 'ALTER SYSTEM KILL SESSION ''' || i.sid || ',' || i.serial# ||
''' immediate';
dbms_output.put_line(Cnt || '>>>>' || SQLID);
--execute immediate (v_sql);
end;
结束循环;
dbms_output.put_line(Cnt || '>>>>' || SQLID);
结束 kwp_SCMP_KillSessionTEST;
PROCEDURE SYS.KWP_SCMP_KILLSESSIONTEST 的编译错误
错误:PL/SQL:ORA-00904:“T”。“SQL_ID”:标识符无效 线路:21 文本:和 s.sql_id = t.sql_id
错误:PL/SQL:SQL 语句被忽略 线路:18 文本:选择不同的 S.SID、S.SERIAL#、s。机器,s.SQL_ID,s.EVENT
错误:PLS-00302:必须声明组件“SERIAL#” 线路:23 文本:v_sql := 'ALTER SYSTEM KILL SESSION ''' || i.sid || ',' || i.serial# ||
错误:PL/SQL:语句被忽略 线路:23 文本:v_sql := 'ALTER SYSTEM KILL SESSION ''' || i.sid || ',' || i.serial# ||
错误:PLS-00201:必须声明标识符“SQLID” 线路:25 文本:dbms_output.put_line(Cnt || '>>>>' || SQLID);
错误:PL/SQL:语句被忽略 线路:25 文本:dbms_output.put_line(Cnt || '>>>>' || SQLID);
错误:PLS-00201:必须声明标识符“SQLID” 线路:31 文本:dbms_output.put_line(Cnt || '>>>>' || SQLID);
错误:PL/SQL:语句被忽略 线路:31 文本:dbms_output.put_line(Cnt || '>>>>' || SQLID);
【问题讨论】:
-
嗨,欢迎来到 Stack Overflow。您可能想通读一些有关如何提出好问题的帮助页面,然后单击“编辑”并添加一些您实际提出的问题的详细信息。您可以通过选择代码并单击文本区域工具栏中的
{}按钮来正确格式化代码。
标签: plsqldeveloper