Re: [SQL] Problem with return type of function ??? (corrected)

2009-10-24 Thread Denis BUCHER
Tom Lane a écrit : Denis BUCHER dbuche...@hsolutions.ch writes: To do this it will be a little complicated because of table dependencies... And it could bug again at the next DROP COLUMN... Is there a way to change my function (RETURN SETOF part) to specify the column names/types ? No, not

[SQL] Problem with return type of function ???

2009-10-22 Thread Denis BUCHER
Hello, I have a strange problem, because it worked in a fonction for a table, and now I created the same (?) function for another table and it doesn't work... The function is accepted but at runtime I get : ERREUR: wrong record type supplied in RETURN NEXT CONTEXTE : PL/pgSQL function

Re: [SQL] Problem with return type of function ???

2009-10-22 Thread Richard Huxton
Denis BUCHER wrote: ERREUR: wrong record type supplied in RETURN NEXT CONTEXTE : PL/pgSQL function hds_bw_find_sn_live line 26 at return next Does someone maybe knows what it could be ? This is (a part of) my function : CREATE OR REPLACE FUNCTION rma.find_sn_live (varchar(30))

Re: [SQL] Problem with return type of function ???

2009-10-22 Thread Denis BUCHER
Richard Huxton a écrit : ERREUR: wrong record type supplied in RETURN NEXT CONTEXTE : PL/pgSQL function hds_bw_find_sn_live line 26 at return next Does someone maybe knows what it could be ? This is (a part of) my function : CREATE OR REPLACE FUNCTION rma.find_sn_live (varchar(30))

Re: [SQL] Problem with return type of function ???

2009-10-22 Thread Richard Huxton
Denis BUCHER wrote: Richard Huxton a écrit : ERREUR: wrong record type supplied in RETURN NEXT CONTEXTE : PL/pgSQL function hds_bw_find_sn_live line 26 at return next Does someone maybe knows what it could be ? This is (a part of) my function : CREATE OR REPLACE FUNCTION rma.find_sn_live

Re: [SQL] Problem with return type of function ???

2009-10-22 Thread Denis BUCHER
Hello Richard, Richard Huxton a écrit : ERREUR: wrong record type supplied in RETURN NEXT CONTEXTE : PL/pgSQL function hds_bw_find_sn_live line 26 at return next Does someone maybe knows what it could be ? This is (a part of) my function : CREATE OR REPLACE FUNCTION rma.find_sn_live

Re: [SQL] Problem with return type of function ???

2009-10-22 Thread Richard Huxton
Denis BUCHER wrote: I saw somwhere it could be the order of the fields ? Not if you are doing SELECT * FROM. Create an empty test database and a short script to create the table and function, insert a couple of rows then call the function. If you wrap the whole thing in BEGIN ... ROLLBACK we

Re: [SQL] Problem with return type of function ???

2009-10-22 Thread Denis BUCHER
Hello Richard, Richard Huxton a écrit : I saw somwhere it could be the order of the fields ? Not if you are doing SELECT * FROM. Create an empty test database and a short script to create the table and function, insert a couple of rows then call the function. If you wrap the whole thing

Re: [SQL] Problem with return type of function ???

2009-10-22 Thread Richard Huxton
Denis BUCHER wrote: Richard Huxton a écrit : The other thing you could try is printing out row before returning it: RAISE NOTICE 'row = %', row; RETURN NEXT ROW; It might be you've not got what you were expecting. Thanks a lot, good idea... But it looks good : Hmm... SELECT *

Re: [SQL] Problem with return type of function ??? (corrected)

2009-10-22 Thread Tom Lane
Denis BUCHER dbuche...@hsolutions.ch writes: I have a strange problem, because it worked in a fonction for a table, and now I created the same (?) function for another table and it doesn't work... The function is accepted but at runtime I get : ERREUR: wrong record type supplied in RETURN

Re: [SQL] Problem with return type of function ???

2009-10-22 Thread Denis BUCHER
Richard Huxton a écrit : The other thing you could try is printing out row before returning it: RAISE NOTICE 'row = %', row; RETURN NEXT ROW; It might be you've not got what you were expecting. Thanks a lot, good idea... But it looks good : Hmm... SELECT * FROM rma.test

Re: [SQL] Problem with return type of function ??? (corrected)

2009-10-22 Thread Denis BUCHER
Hello Tom, Tom Lane a écrit : Denis BUCHER dbuche...@hsolutions.ch writes: I have a strange problem, because it worked in a fonction for a table, and now I created the same (?) function for another table and it doesn't work... The function is accepted but at runtime I get : ERREUR:

Re: [SQL] Problem with return type of function ???

2009-10-22 Thread Richard Huxton
Denis BUCHER wrote: Bienvenue dans psql 8.1.17, l'interface interactive de PostgreSQL. OK - I'm not aware of any problems in that version. You're only one revision from the latest 8.1.x series. OK I prepared what you asked and I tested it myself before sending. And I think I've found the

Re: [SQL] Problem with return type of function ??? (corrected)

2009-10-22 Thread Richard Huxton
Tom Lane wrote: Denis BUCHER dbuche...@hsolutions.ch writes: Does that table have any dropped columns? If you don't remember whether you ever dropped any columns, a quick look into pg_attribute will tell you: select attname from pg_attribute where attrelid =

Re: [SQL] Problem with return type of function ??? (corrected)

2009-10-22 Thread Denis BUCHER
Hi Tom, Another question : Tom Lane a écrit : Denis BUCHER dbuche...@hsolutions.ch writes: I have a strange problem, because it worked in a fonction for a table, and now I created the same (?) function for another table and it doesn't work... The function is accepted but at runtime I get

Re: [SQL] Problem with return type of function ??? (corrected)

2009-10-22 Thread Tom Lane
Denis BUCHER dbuche...@hsolutions.ch writes: To do this it will be a little complicated because of table dependencies... And it could bug again at the next DROP COLUMN... Is there a way to change my function (RETURN SETOF part) to specify the column names/types ? No, not really. You could