Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/02/2007, 11:08
alejandrita_h
 
Fecha de Ingreso: febrero-2007
Mensajes: 4
Antigüedad: 17 años, 3 meses
Puntos: 0
error en oracle,podrian ayudarme se los agradeceria mucho!!!

Hola,

estoy tratando de ejecutar un pequeño script para llenar unas tablas, pero me marca error al ejecutarlo, se compila y crea correctamente pero al ejecutarlo me marca el siguiente error:

ERROR at line 1:
ORA-06550: line 1, column 22:
PLS-00103: Encountered the symbol "SQL" when expecting one of the following:
<an identifier> <a double-quoted delimited-identifier> delete
exists prior <a single-quoted SQL string>
The symbol "<an identifier> was inserted before "SQL" to continue.


no se a que se deba, el pequeño script es este:

set serveroutput on size 500000;
set linesize 6000;
set serveroutput off;
create or replace PROCEDURE carga_grupo_uv is

id_materia_aux number(8);
descripcion_m varchar2(500);
clave_mat_aux varchar2(10);
levl_code varchar2(1);
id_nivel_aux number(8);
id_ejercicio_aux number(8);
id_depa_aux number(8);
dept_code_aux varchar2(4);
seq_gpo number(8);
c_term_code varchar2(6);
c_crn varchar2(5);
c_subj_code varchar2(4);
c_crse_numb varchar2(5);
c_seq_numb varchar2(3);
c_ssts_code varchar2(1);
c_activity_date date;
/*fecha date;*/
attr_code varchar2(4);

cursor c_ssbsect_uv is
select replica_stu.grupo_curso_seq.nextval,
ssbsect_term_code,
ssbsect_crn,
ssbsect_subj_code,
ssbsect_crse_numb,
ssbsect_seq_numb,
decode(ssbsect_ssts_code,'I','C',ssbsect_ssts_code ),
ssbsect_activity_date
from [email protected] where ssbsect_term_code >='200600';

cursor c_ssrattr_uv(c_term_code varchar2, c_crn number)is
select ssrattr_attr_code
from [email protected] where ssrattr_term_code = c_term_code and ssrattr_crn = c_crn;

begin
/*select sysdate into fecha from dual;*/
if c_ssbsect_uv%isopen then
close c_ssbsect_uv;
end if;
open c_ssbsect_uv;
loop
fetch c_ssbsect_uv into
seq_gpo,
c_term_code,
c_crn,
c_subj_code,
c_crse_numb,
c_seq_numb,
c_ssts_code,
c_activity_date;
exit when c_ssbsect_uv%notfound;
id_materia_aux := p_llenaexpedientes.obtiene_idmateria(c_subj_code, c_crse_numb);
if (id_materia_aux = 0)then
DBMS_OUTPUT.PUT_LINE('ERROR AL OBTENER MATERIA'||seq_gpo||c_subj_code||c_crse_numb);
else
id_nivel_aux := p_llenaexpedientes.obtiene_nivelescolar(c_term_cod e, c_crn);
if(id_nivel_aux = 0)then
DBMS_OUTPUT.PUT_LINE('ERROR AL OBTENER EL NIVEL ESCOLAR'||seq_gpo||c_term_code || c_crn);
else
id_ejercicio_aux := p_llenaexpedientes.obtiene_ejercicioacademico(c_te rm_code);
if(id_ejercicio_aux = 0)then
DBMS_OUTPUT.PUT_LINE('ERROR AL OBTENER EL EJERCICIO ACADEMICO'||seq_gpo||c_term_code);
else
id_depa_aux := p_llenaexpedientes.obtiene_deptoprofesor(c_subj_co de, c_crse_numb);
if(id_depa_aux = -1)then
DBMS_OUTPUT.PUT_LINE('ERROR AL OBTENER EL DEPARTAMENTO DEL PROFESOR'||seq_gpo||c_subj_code||c_crse_numb);
else
descripcion_m := p_llenaexpedientes.obtiene_descmateria(c_subj_code , c_crse_numb);
if(descripcion_m is null)then
DBMS_OUTPUT.PUT_LINE('ERROR AL OBTENER LA DESCIPCION DE LA MATERIA'||seq_gpo||c_subj_code||c_crse_numb);
else
insert into dm_grupo_curso values(seq_gpo,'30',id_materia_aux,id_nivel_aux,id _ejercicio_aux,
c_crn,descripcion_m,null,null,null,c_ssts_code,'A' ,SYSDATE,-1,c_activity_date,c_seq_numb,id_depa_aux);
commit;
end if;/*if descripcion de materia*/
end if; /*if departamento*/
end if; /*if ejercicio academico*/
end if; /*if nivel escolar*/
end if; /*if id_materia*/

if c_ssrattr_uv%isopen then
close c_ssrattr_uv;
end if;
open c_ssrattr_uv(c_term_code, c_crn);
loop
fetch c_ssrattr_uv into attr_code;
exit when c_ssrattr_uv%notfound;

insert into dm_grupo_atributos values (seq_gpo,attr_code);
commit;
end loop;/*loop c_ssrattr_uv*/
close c_ssrattr_uv;
end loop;/*loop c_ssbsect_uv*/
close c_ssbsect_uv;
commit;
end;
/
show errors


espero puedan ayudarme!!. Gracias. Saludos.