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

Consulta con funciones

Estas en el tema de Consulta con funciones en el foro de PostgreSQL en Foros del Web. Estimados tengo la siguiente duda como puedo crear 2 funciones, que una utilice a la otra por ejemplo. Aqui la idea es que la funcion2 ...
  #1 (permalink)  
Antiguo 26/10/2010, 08:19
Avatar de death_nemesis  
Fecha de Ingreso: abril-2009
Ubicación: Santiago - Chile
Mensajes: 147
Antigüedad: 15 años, 7 meses
Puntos: 2
Consulta con funciones

Estimados tengo la siguiente duda como puedo crear 2 funciones, que una utilice a la otra por ejemplo.

Aqui la idea es que la funcion2 mande los parametros necesarios a la funcion1 y que esta haga el insert en este caso, y que la funcion 2 evalule si lo hizo bien y continue con su codigo.

Ojala me puedan ayudar.

Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION Funcion1(numero1 INTEGER,numero2 INTEGER) RETURNS INTEGER AS $_$
  2. DECLARE
  3.  
  4. BEGIN
  5.     INSERT INTO tabla VALUES(numero1,numero2);
  6.     RETURN 1;
  7. END;
  8. $_$
  9. LANGUAGE plpgsql;
  10.  
  11.  
  12. CREATE OR REPLACE FUNCTION Funcion2() RETURNS BOOLEAN AS $_$
  13. DECLARE
  14.  
  15. BEGIN
  16.      RETURN TRUE;
  17. END;
  18. $_$
  19. LANGUAGE plpgsql;
  #2 (permalink)  
Antiguo 26/10/2010, 08:23
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Consulta con funciones

death_nemesis

dentro de la función solo basta con llamar la función 1 como si llamases cualquier función del sistema.

Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION Funcion2() RETURNS BOOLEAN AS $_$
  2. DECLARE
  3. variable INTEGER;
  4. BEGIN
  5. variable = funcion1(1,2);
  6.      RETURN TRUE;
  7. END;
  8. $_$
  9. LANGUAGE plpgsql;
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 26/10/2010, 08:28
Avatar de death_nemesis  
Fecha de Ingreso: abril-2009
Ubicación: Santiago - Chile
Mensajes: 147
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Consulta con funciones

Cita:
Iniciado por huesos52 Ver Mensaje
death_nemesis

dentro de la función solo basta con llamar la función 1 como si llamases cualquier función del sistema.

Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION Funcion2() RETURNS BOOLEAN AS $_$
  2. DECLARE
  3. variable INTEGER;
  4. BEGIN
  5. variable = funcion1(1,2);
  6.      RETURN TRUE;
  7. END;
  8. $_$
  9. LANGUAGE plpgsql;
Gracias huesos52 voy a probar y te cuento como me fue.
  #4 (permalink)  
Antiguo 27/10/2010, 13:00
Avatar de death_nemesis  
Fecha de Ingreso: abril-2009
Ubicación: Santiago - Chile
Mensajes: 147
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Consulta con funciones

me fue bien con esto

Ahora una consulta como puedo crear una tabla temporal y apuntar a ella pero que no duré por el dia nomas, ya que tengo una variable que apunta a una tabla temporal pero al pasar un día dice que la relacion no existe la variable es asi

row_data tmp%ROWTYPE;

y despues dice que la relacion tmp no existe
  #5 (permalink)  
Antiguo 27/10/2010, 13:21
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Consulta con funciones

Por que la haces temporal si necesitas de ella todo el tiempo?
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #6 (permalink)  
Antiguo 27/10/2010, 17:50
Avatar de death_nemesis  
Fecha de Ingreso: abril-2009
Ubicación: Santiago - Chile
Mensajes: 147
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Consulta con funciones

Cita:
Iniciado por huesos52 Ver Mensaje
Por que la haces temporal si necesitas de ella todo el tiempo?
Lo que pasa es que saco información de distintas tablas y necesito crear ids ficticios y trabajar con esa información para mostrar reportes, entonces por eso creo esa tabla temporal
  #7 (permalink)  
Antiguo 28/10/2010, 05:08
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Consulta con funciones

death_nemesis una tabla temporal desaparece cuando finaliza una sesión o cuando se presenta el fin de una transacción.

Si necesitas otros espacios de tiempo, lo mejor es que la creas permanente.

Yo tengo 10 tablas para generación de reportes y cada que entro a los procedimientos le hago un truncate a la taabla.

queda vacía y lista para el siguiente usuario.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #8 (permalink)  
Antiguo 28/10/2010, 06:17
Avatar de death_nemesis  
Fecha de Ingreso: abril-2009
Ubicación: Santiago - Chile
Mensajes: 147
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Consulta con funciones

Cita:
Iniciado por huesos52 Ver Mensaje
death_nemesis una tabla temporal desaparece cuando finaliza una sesión o cuando se presenta el fin de una transacción.

Si necesitas otros espacios de tiempo, lo mejor es que la creas permanente.

Yo tengo 10 tablas para generación de reportes y cada que entro a los procedimientos le hago un truncate a la taabla.

queda vacía y lista para el siguiente usuario.

saludos
al final lo tube que hacer así con una tabla fija aun que no era la idea pero = funciona.. xD

Gracias por la ayuda

Etiquetas: funciones
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 15:45.