El 25/11/2011 22:16, Marcos Héctor Trotti escribió:
Hola a todos, espero que mi consulta no sea una pavada, pero la verdad estoy un poco trabado y recurrí a este medio para ver si alguien me puede dar una mano. El problema que tengo es el siguiente, necesito guardar datos de una tabla en un archivo de texto, dicho archivo deberia tener un nombre USU_COD_USUARIO, generando uno por cada usuario registrado en el sistema. Mi primer acercamiento fue utilizar copy y crear una funcion que para cada usuario me genere el archivo, pero el problema es que cuando realizo algo de ejemplo, como esto:

CREATE FUNCTION G30_SAVELOG()
RETURNS BOOLEAN AS $$
DECLARE
        USERCOD G30_TCOD_USUARIO;
        FILENAME VARCHAR(150);
BEGIN
  SELECT COD_USUARIO INTO USERCOD
         FROM USUARIO
  WHERE COD_USUARIO='00001';
  FILENAME='USU_'+USERCOD;
  Copy (Select * From log_operations) To FILENAME With CSV;
  RETURN TRUE;
END;
$$ LANGUAGE plpgsql;

Recibo el error en FILENAME cuando invoco a copy (en el ejemplo puse un solo usuario, de hecho el select estaría de mas, pero la intención seria utilizar un cursor para iterar sobre la tabla de usuarios)

Desde ya cualquier ayuda que me puedan brindar es muy bienvenida, estoy utilizando postgresql para un proyecto que tengo que entregar para la Universidad.

Saludos

--
*Marcos Héctor Trotti*

Creo que debes poner el camino absoluto del archivo /home/user/FILENAME.
saludos



Fin a la injusticia, LIBERTAD AHORA A NUESTROS CINCO COMPATRIOTAS QUE SE 
ENCUENTRAN INJUSTAMENTE EN PRISIONES DE LOS EEUU!
http://www.antiterroristas.cu
http://justiciaparaloscinco.wordpress.com

Responder a