From: | Juan Pablo Espino <jp(dot)espino(at)gmail(dot)com> |
---|---|
To: | pgsql-es postgresql <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | ALTER TABLE dentro de una función |
Date: | 2005-01-27 18:42:08 |
Message-ID: | 3e7daec105012710426a6b9a85@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Tengo una tabla llamada prueba y quisiera tener una función para
añadirle una columna pasando como argumento el nombre de la tabla,
suena sin sentido hacer eso, pero solo queria saber si eso se puede
hacer. Entonces tengo lo siguiente:
CREATE FUNCTION añadir_columna(text) RETURNS integer AS $$
DECLARE
cadena ALIAS FOR $1;
BEGIN
ALTER TABLE cadena
ADD COLUMN Nueva_Columna varchar(20);
RETURN NULL;
END;
$$ LANGUAGE plpgsql;
cuando hago select añadir_columna(prueba) me sale:
ERROR: column "prueba" does not exist
intente dejando la funcion sin argumento y poniendo el nombre de la
tabla directamente y si funciona, me parece que deberia ser sencillo
pasarle el nombre de la tabla a la funcion ... tambien intente en vez
de text, varchar y me aparece el mismo error, gracias de antemano.
From | Date | Subject | |
---|---|---|---|
Next Message | DIR-Gonzalo León | 2005-01-27 18:59:08 | Consulta |
Previous Message | Alvaro Herrera | 2005-01-27 18:37:36 | Re: Consulta |