Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

Error en begin al querer crear un package con procedimiento

lo que pasa es que estoy tratando de hacer un package en oracle, pero me sale un error en el begin al momento de crear el procedimiento, he investigado el error que me sale el cual es:

PLS-00103: Se ha encontrado el sĂ­mbolo "BEGIN" cuando se esperaba uno de los siguientes:

Pero en internet no me aparece nada coherente a lo que estoy buscando.

A continuaciĂłn coloco es script el cual estoy empleando para dentro del package

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

create or replace package usuariosPersona as

procedure insertarPersona(
  PCedula persona.Cedula %TYPE,
  PNombreUno persona.NombreUno %TYPE,
  PNombreDos persona.NombreDos %TYPE,
  PApellidoUno persona.ApellidoUno %TYPE,
  PApellidoDos persona.ApellidoDos %TYPE,
  PDireccion persona.Direccion %TYPE,
  PNumeroTelefonico persona.NumeroTelefonico %TYPE,
  PCorreo persona.Correo %TYPE,
  PContrasenia persona.Contrasenia %TYPE,
  PFkResodencia persona.fkResidencia %TYPE
)
as
begin --Aqui aparece el error
insert into Persona (
  Cedula, 
  NombreUno, 
  NombreDos, 
  ApellidoUno, 
  ApellidoDos, 
  Direccion, 
  NumeroTelefonico, 
  Correo, 
  Contrasenia, 
  fkResidencia)
values (
  PCedula, 
  PNombreUno, 
  PNombreDos, 
  PApellidoUno, 
  PApellidoDos, 
  PDireccion, 
  PNumeroTelefonico, 
  PCorreo, 
  PContrasenia, 
  PFkResodencia);
exception
when others then
dbms_output.put_line('Error al insertar persona');
end insertarPersona;

end usuariosPersona;

y este es el error que me sale:

Imagen del error:

>Solution :

The very first line says that you’re creating a package specification:

create or replace package usuariosPersona as...

It only contains description of procedures and functions.

It is that package body

create or replace package BODY usuariosPersona as ...

that contains executable part of the code (i.e. the begin ... (which is what Oracle complained about)).

So: specification first:

create or replace package usuariosPersona as

procedure insertarPersona(
  PCedula persona.Cedula %TYPE,
  PNombreUno persona.NombreUno %TYPE,
  PNombreDos persona.NombreDos %TYPE,
  PApellidoUno persona.ApellidoUno %TYPE,
  PApellidoDos persona.ApellidoDos %TYPE,
  PDireccion persona.Direccion %TYPE,
  PNumeroTelefonico persona.NumeroTelefonico %TYPE,
  PCorreo persona.Correo %TYPE,
  PContrasenia persona.Contrasenia %TYPE,
  PFkResodencia persona.fkResidencia %TYPE
);
end;
/

Body next:

                          note the difference!
                          ----
create or replace package BODY usuariosPersona as

procedure insertarPersona(
  PCedula persona.Cedula %TYPE,
  PNombreUno persona.NombreUno %TYPE,
  PNombreDos persona.NombreDos %TYPE,
  PApellidoUno persona.ApellidoUno %TYPE,
  PApellidoDos persona.ApellidoDos %TYPE,
  PDireccion persona.Direccion %TYPE,
  PNumeroTelefonico persona.NumeroTelefonico %TYPE,
  PCorreo persona.Correo %TYPE,
  PContrasenia persona.Contrasenia %TYPE,
  PFkResodencia persona.fkResidencia %TYPE
)
as
begin --Aqui aparece el error
insert into Persona (
  Cedula, 
  NombreUno, 
  NombreDos, 
  ApellidoUno, 
  ApellidoDos, 
  Direccion, 
  NumeroTelefonico, 
  Correo, 
  Contrasenia, 
  fkResidencia)
values (
  PCedula, 
  PNombreUno, 
  PNombreDos, 
  PApellidoUno, 
  PApellidoDos, 
  PDireccion, 
  PNumeroTelefonico, 
  PCorreo, 
  PContrasenia, 
  PFkResodencia);
exception
when others then
dbms_output.put_line('Error al insertar persona');
end insertarPersona;

end usuariosPersona;
Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading