Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Oracle
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-05-2008
elorza elorza is offline
Miembro
 
Registrado: nov 2007
Posts: 41
Poder: 0
elorza Va por buen camino
Question Utilizar sinonimos de Oracle en Delphi

Hola,
tengo una pequeña duda.
He creado un sinonimo en Oracle "CREATE SYNONIM P_ALTA FOR PAQ.P_ALTA".
Bien, ahora necesito utilizar ese sinonimo desde la aplicación Delphi, exactamente desde un "TOraStoredProc". Es decir, a la hora de definir el storedProc Name en vez de poner elorza.PAQ.P_ALTA, necesito utilizar el sinonimo y poner: elorza.P_ALTA.

¿Es esto posible?

Espero tu respuesta,

Gracias,
Responder Con Cita
  #2  
Antiguo 20-05-2008
elorza elorza is offline
Miembro
 
Registrado: nov 2007
Posts: 41
Poder: 0
elorza Va por buen camino
Question

Me he dado cuenta de que lo que da error es la creación del sinonimo.
Es decir, CREATE SYNONYM P_ALTA FOR PAQ.P_ALTA; (no es posible)
Entonces, mi duda es la siguiente. Cómo crear un sinonimo para una procedure de un paquete. ¿Eso es posible? (PAQ es el nombre de mi paquete y P_ALTA es el procedure de ese paquete)

El problema que tengo es la siguiente:
Tengo una aplicación hecha en Delphi y utiliza directamente unas proceduras de la base de datos Oracle. Ahora, esos procedures las he metido en un paquete. Entonces, para que la aplicación siga funcionando tendría que modificar uno por uno y cambiar en todos los sitios que pone P_ALTA, por PAQ.P_ALTA; Por ello, he pensado en crear un sinonimo de ello, y así no tendría que modificarlos.

Espero una ayuda,

Gracias,
Responder Con Cita
  #3  
Antiguo 20-05-2008
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Cita:
Empezado por elorza Ver Mensaje
Hola,
tengo una pequeña duda.
He creado un sinonimo en Oracle "CREATE SYNONIM P_ALTA FOR PAQ.P_ALTA".
Bien, ahora necesito utilizar ese sinonimo desde la aplicación Delphi, exactamente desde un "TOraStoredProc". Es decir, a la hora de definir el storedProc Name en vez de poner elorza.PAQ.P_ALTA, necesito utilizar el sinonimo y poner: elorza.P_ALTA.

¿Es esto posible?

Espero tu respuesta,

Gracias,

Amigo, disculpa que responsda tu hilo con otra pregunta,

¿Cuál es la ventaja de meter los Procedimientos almacenados en un paquete?.

Hasta ahora solo los he usado para dar salida a los recorsets.

Saludos.
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #4  
Antiguo 20-05-2008
elorza elorza is offline
Miembro
 
Registrado: nov 2007
Posts: 41
Poder: 0
elorza Va por buen camino
Tengo una aplicación que utiliza 2 procedimientos de la base de datos definidas en Oracle.
Ahora, estos procedimientos he tenido que convertirlos a servicios web para poder ofrecerlos vía web. Para ello, es necesario (creo) meter los procedimientos es un package y es ese paquete el que se publica como servicio web.

¿Sabes cómo puedo definir un sinomimo de un procedure de ese paquete?

-El paquete se llama: PAQ
-Y por ejemplo un procedure: P_ALTA

Necesito definir un sinonimo (ejemplo ALTAS) que sustituya a PAQ.P_ALTA.
Responder Con Cita
  #5  
Antiguo 06-06-2008
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 22
__hector Va por buen camino
Si, claro que es posible crear un sinonimo para un paquete:

http://www.softics.ru/docs/oracle10r...ments_7001.htm
__________________
Héctor Geraldino
Software Engineer
Responder Con Cita
  #6  
Antiguo 07-06-2008
Avatar de Gambito
Gambito Gambito is offline
Miembro
 
Registrado: jul 2006
Posts: 10
Poder: 0
Gambito Va por buen camino
segun entiendo tienes un paquete llamado PAQ dentro del cuals tienes varios procedimientos, entre ellos uno llamado P_ALTA.

pues bien te cuento que hasta donde yo se, no es posible crear un sinonimo para un procedimiento que se encuentra dentro de un paquete, lo que puedes hacer es crear un sinonimo para el paquete, y la forma de utilizar el procedimiento seria PAQ.P_ALTA.

segun te entiendo de esta forma te serviria para los servicios web que tienes publicasdos.

el problema esta en que no quieres cambiar tu codigo en delphi pora invocar los procedimientos del paquete, lo que podrias hacer crear un procedimiento P_ALTA que internamente realiza el llamado a PAQ.P_ALTA obviamente recibiendo los mismos parametros. asi no tendrias que cambiar tu aplicacion delphi.

espero haberte ayudado en algo.
Responder Con Cita
  #7  
Antiguo 11-09-2008
Avatar de SpyO_O
SpyO_O SpyO_O is offline
Miembro
 
Registrado: may 2003
Ubicación: Argentina
Posts: 22
Poder: 0
SpyO_O Va por buen camino
Sinonimos en oracle

Hola, mira no es posible hace lo que tu necesitas , pero lo que puede hacer es crear procedimientos con el mismo nombre de tu antigua version y llamarlos desde desde ahi los paquetes.
por ejemplo:

Procedure A1(A varchar2) is
begin
--llamar al paquete
end;

suponiendo que A1 es tu anterior procedimiento
espero que te ayude
suerte
__________________
Q Onda?
Responder Con Cita
  #8  
Antiguo 17-09-2008
Avatar de gatosoft
[gatosoft] gatosoft is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Bogotá, Colombia
Posts: 833
Poder: 21
gatosoft Va camino a la fama
Buen dia Elorza... Si es posible... pero como dice SpyO_O....

Yo tuve que hacerlo para una interfaz con otro sistema

Crea el procedure P_ALTA. con lá misma definición del procedure dentro de tu paquete PAQ.P_ALTA.

Y este nuevo procediemiento solo tendría el llamado a tu procediemitno en el paquete:

Procedure P_ALTA (Param1 Tipo, Param 2 Tipo....) is
Begin
PAQ.P_ALTA(Param1, Param2...);
end;


Saludos,
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Utilizar el driver del proveedor - Oracle ADO.NET SMTZ Conexión con bases de datos 1 30-06-2007 07:35:24
Error con sinónimos david.rguez SQL 6 11-04-2007 18:07:49
Como utilizar MapObjects y Oracle Calvsoft Oracle 1 06-09-2006 22:56:14
Sinónimos de Oracle y componentes TTable javito Oracle 2 04-05-2004 12:35:56
Error al utilizar TStoredProc con Driver ODBC Oracle djjano2000 Oracle 4 31-03-2004 14:49:35


La franja horaria es GMT +2. Ahora son las 20:54:34.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi