Buenas! 
ahora tengo un problema con la sentencia EXECUTE para realizar un UPDATE en una 
función, la función es la siguiente:
 
CREATE OR REPLACE FUNCTION crear_cxm() RETURNS VOID AS 
$$
BEGIN
     EXECUTE 'update datos set $1=$2*$3' USING cxm,cantidad,monto;
END;
$$ LANGUAGE plpgsql;
 
y el error:
ERROR:  no existe la columna «cxm»
LÍNEA 1: SELECT  cxm
                ^
CONSULTA:  SELECT  cxm
CONTEXTO:  PL/pgSQL function "crear_campos_cxm" line 2 at sentencia EXECUTE
 
El campo cxm existe en la tabla y no se porque da el error. La idea es generar 
una función que permita crear un campo como multiplicación de otros dos campos 
y que se pueda cambiar el nombre de los campos que se multiplican, hay otra 
forma de hacerlo?
gracias, 
 
 


      

Responder a