Retorno de chave primária no insert
10/12/2011
0
Bom dia á todos !
Sou iniciante no post e preciso da ajuda de vocês,
Seguinte, criei uma função para inserir dados, mas preciso que ela me retorne o valor do campo chave primária que ele cadastrou.
Segue a function:
CREATE OR REPLACE FUNCTION public.sp_ins_cotacao (
char,
char,
char,
char,
char,
char,
char,
char
)
RETURNS integer AS
$body$
DECLARE
OPCAO ALIAS FOR $1;
DTCAD ALIAS FOR $2;
DTRESP ALIAS FOR $3;
DATAF ALIAS FOR $4;
PROXIM ALIAS FOR $5;
MERCAD ALIAS FOR $6;
TPPROD ALIAS FOR $7;
CODEMP ALIAS FOR $8;
NCOTA ZZ6010%ROWTYPE;
BEGIN
IF opcao = I THEN
INSERT INTO ZZ6010 (ZZ6_DTCAD, ZZ6_DTRESP, ZZ6_DATAF, ZZ6_PROXIM, ZZ6_MERCAD, ZZ6_TPPROD,
ZZ6_CODEMP) values (DTCAD, DTRESP, DATAF, PROXIM, MERCAD, TPPROD, CODEMP);
END IF;
RETURN NCOTA.ZZ6_NCOTA;
END;
$body$
LANGUAGE plpgsql
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER;
Esta function está inserindo dados sem problemas, mas retorna NULL. Onde estou errando ?
Sou iniciante no post e preciso da ajuda de vocês,
Seguinte, criei uma função para inserir dados, mas preciso que ela me retorne o valor do campo chave primária que ele cadastrou.
Segue a function:
CREATE OR REPLACE FUNCTION public.sp_ins_cotacao (
char,
char,
char,
char,
char,
char,
char,
char
)
RETURNS integer AS
$body$
DECLARE
OPCAO ALIAS FOR $1;
DTCAD ALIAS FOR $2;
DTRESP ALIAS FOR $3;
DATAF ALIAS FOR $4;
PROXIM ALIAS FOR $5;
MERCAD ALIAS FOR $6;
TPPROD ALIAS FOR $7;
CODEMP ALIAS FOR $8;
NCOTA ZZ6010%ROWTYPE;
BEGIN
IF opcao = I THEN
INSERT INTO ZZ6010 (ZZ6_DTCAD, ZZ6_DTRESP, ZZ6_DATAF, ZZ6_PROXIM, ZZ6_MERCAD, ZZ6_TPPROD,
ZZ6_CODEMP) values (DTCAD, DTRESP, DATAF, PROXIM, MERCAD, TPPROD, CODEMP);
END IF;
RETURN NCOTA.ZZ6_NCOTA;
END;
$body$
LANGUAGE plpgsql
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER;
Esta function está inserindo dados sem problemas, mas retorna NULL. Onde estou errando ?
Marcio Santos
Curtir tópico
+ 0
Responder
Posts
13/12/2011
Fabiano Abreu
Olá Marcio,
Tente utilizar a função, creio que lhe auxiliará.
Abraços.
_ _
Fabiano Abreu
Papo Sql - Um blog com tutoriais, dicas e truques sobre SQL
Tente utilizar a função
RETURNING
Abraços.
_ _
Fabiano Abreu
Papo Sql - Um blog com tutoriais, dicas e truques sobre SQL
Responder
Clique aqui para fazer login e interagir na Comunidade :)