Обсуждение: Question about function
Hello list. That might sound very lame but I am new to postgres. I was looking into the postgres guide and trying to make a function to make an insert to a table. but postgres returns me an error in the RETURN of the function query is: CREATE FUNCTION test() RETURNS bool AS 'INSERT INTO b (nome) VALUES (\'PQP\');' LANGUAGE 'sql'; >> function declared to return type bool, but final query is not a retrieve obviously my return type is incorrect... so what should I use? ______________________________________ Scanned and protected by Inflex http://pldaniels.com/inflex
On Wed, 13 Mar 2002, Bruno Lopes wrote: > Hello list. > That might sound very lame but I am new to postgres. > I was looking into the postgres guide and trying to make a function to make an insert to a table. > but postgres returns me an error in the RETURN of the function > > query is: > CREATE FUNCTION test() RETURNS bool AS 'INSERT INTO b (nome) VALUES (\'PQP\');' LANGUAGE 'sql'; > >> function declared to return type bool, but final query is not a retrieve > > obviously my return type is incorrect... so what should I use? I think you need to end an sql language function with a select of some sort (even if it's just say select true;)
Bruno Lopes (Desenvolvimento) <blvieira@pcsolution.com.br> writes: > CREATE FUNCTION test() RETURNS bool AS 'INSERT INTO b (nome) VALUES (\'PQP\');' LANGUAGE 'sql'; > function declared to return type bool, but final query is not a retrieve > obviously my return type is incorrect... so what should I use? It's unhappy because you're not returning anything (no final SELECT statement). You might consider updating to a more recent PG version; that error message hasn't been worded that way for quite awhile. regards, tom lane