Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

C Crear stored procedure

Estas en el tema de C Crear stored procedure en el foro de Oracle en Foros del Web. Buen dia a todos. Soy nuevo en el tema de Oracle, estoy familiarixado con sql server 2000, 20005, pero me doy cuenta que la forma ...
  #1 (permalink)  
Antiguo 26/12/2008, 10:36
 
Fecha de Ingreso: octubre-2008
Mensajes: 23
Antigüedad: 15 años, 5 meses
Puntos: 0
Exclamación C Crear stored procedure

Buen dia a todos.

Soy nuevo en el tema de Oracle, estoy familiarixado con sql server 2000, 20005, pero me doy cuenta que la forma d etrabajar de ambos sistemas es diferente.

Mi duda es como puedo crear un stored procedure en oracle para obtener datos especificos de la misma a traves de una variable que sea la que me delimite lo que deso encontrar,
el select seria algo así:

select id_estado_id_municipio, folio, propietario from reales
where folio = 'variable'

donde 'variabale' seria el folio que deseo buscar.

Y tambien me gustaria saber como ejecuto el sp desde sql*plus, toad e incluso desde excel.

Espero me puedan ayufar con este tema.
De antemano se los agradesco.
Saludos.
  #2 (permalink)  
Antiguo 31/12/2008, 04:05
 
Fecha de Ingreso: diciembre-2008
Mensajes: 7
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: C Crear stored procedure

la solucion con un sp seria:

create o replace procedure NOMBREPROCEDIMIENTO (pparametro tipodedato)
is
vvariable tipodedato (aca declaras variables que necesites (no parametros))
ej: c number;
begin
lo que desees hacer
end ;


tu ejemplo quedaria asi

create o replace procedure NOMBREPROCEDIMIENTO (pfolio number)
is
vestado number;
vmunicipio number;
vfolio number;
vpropiertario varchar2;

begin
select id_estado, id_municipio, folio, propietario
into vestado ,vmunicipio,vfolio,vpropiertario from reales
where folio = pfolio ;

-- si necesitas retornar valores usa:
dmbs_output.put_line('l estado es :' || vestado);



end ;
  #3 (permalink)  
Antiguo 05/01/2009, 12:44
 
Fecha de Ingreso: octubre-2008
Mensajes: 23
Antigüedad: 15 años, 5 meses
Puntos: 0
De acuerdo Respuesta: C Crear stored procedure

Te agrdesco tu colaboración, ahora el problema es que cuando creo el sp me envía un mensaje que las variables de tipo varchar2 deben de tener un rango determinado, y eso lo cambie atipo de dato blob. y para imprimir en pantalla me envía el siguiente mensaje "el identificador dmbs_output.put_line dse debe declarar" sabes a que se debe este mensaje y como puedo corregirlo?
Gracias
  #4 (permalink)  
Antiguo 06/01/2009, 18:34
 
Fecha de Ingreso: diciembre-2008
Mensajes: 13
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: C Crear stored procedure

Varchar2(50)

Dmbs_output.put_line('l estado es :' || vestado);

SINO RECUERDO MAL TENES QUE INICIARLO PARA QUE FUNCIONE BIEN
  #5 (permalink)  
Antiguo 06/01/2009, 21:00
Avatar de kikolice  
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 1 mes
Puntos: 7
Respuesta: C Crear stored procedure

Cita:
Iniciado por jiacevedo Ver Mensaje
"el identificador dmbs_output.put_line dse debe declarar"
esta mal escrito, debe de ser

DBMS
__________________
Blogzote.com :-) Mi blog
  #6 (permalink)  
Antiguo 07/01/2009, 03:28
 
Fecha de Ingreso: diciembre-2008
Mensajes: 7
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: C Crear stored procedure

si, es:
vpropiertario varchar2(50);
no te olvides el punto y coma
  #7 (permalink)  
Antiguo 07/01/2009, 03:38
 
Fecha de Ingreso: diciembre-2008
Mensajes: 7
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: C Crear stored procedure

dbms_output.put_line(vpropietario );

si consideras que esta bien escrito pasame el codigo y lo veo y trato de corregir saludos
  #8 (permalink)  
Antiguo 15/01/2009, 18:18
 
Fecha de Ingreso: octubre-2008
Mensajes: 23
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: C Crear stored procedure

kikolice tiene razon se escribe DBMS, asi que el codigo quedaria asi:

create o replace procedure NOMBREPROCEDIMIENTO (pfolio number)
is
vestado number;
vmunicipio number;
vfolio number;
vpropiertario varchar2;

begin
select id_estado, id_municipio, folio, propietario
into vestado ,vmunicipio,vfolio,vpropiertario from reales
where folio = pfolio ;

-- si necesitas retornar valores usa:
DBMS_output.put_line('l estado es :' || vestado);

les agradesco a todos su apoyo ya funciono mi sp.
Gacias y saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:18.