SoloCodigo

Bases de Datos => Otras Bases de Datos => PostgreSQL => Mensaje iniciado por: mcastro en Martes 20 de Agosto de 2013, 20:30

Título: Problema con llamado a una función
Publicado por: mcastro en Martes 20 de Agosto de 2013, 20:30
Buenas tardes amigos de SOLOCODIGO.
Necesito ayuda en PLPGSQL.
Tengo la siguiente función:
CREATE OR REPLACE FUNCTION fncprueba_incluir_concesionario(pardescripcion text)
  RETURNS text AS
$BODY$
            declare
               sql text;
            begin
               sql = 'insert into nconcesionario (descripcion) values (' || pardescripcion || ')';

               execute fncvalidar_excepciones(sql);
                           
            end;
            $BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;

  Cuando llamo desde esta función a fncvalidar_excepciones(sql) como se puede ver en el código me arroja el siguiente error:

ERROR:  no existe la columna «xxxxxxxxxx»
LINE 1: insert into nconcesionario (descripcion) values (xxxxxxxxxx)
                                                         ^
QUERY:  insert into nconcesionario (descripcion) values (xxxxxxxxxx)
CONTEXT:  PL/pgSQL function fncvalidar_excepciones(text) line 3 at sentencia EXECUTE.

La tabla NCONCESIONARIO tiene estos 2 campos: idconcesionario (serial) y descripcion (character varying);
¿Me pudieran explicar el por qué del error? ¿qué debo corregir y donde?
Gracias de antemano por el apoyo.