Thread: Running functions that return void in psql
I've got quite a few plpgsql functions that insert, update or delete. They're all declared to return void. All other functions, I can just run 'select f(...);' from psql to test them. I don't understand how to test these ones that return void from psql. Thanks.
Eric Brown wrote: > I've got quite a few plpgsql functions that insert, update or delete. > They're all declared to return void. All other functions, I can just run > 'select f(...);' from psql to test them. I don't understand how to test > these ones that return void from psql. neilc=# create function xyz() returns void as 'begin return; end;' language 'plpgsql'; CREATE FUNCTION neilc=# select xyz(); xyz ----- (1 row) -Neil
On Wed, Dec 15, 2004 at 12:19:14AM -0800, Eric Brown wrote: > I've got quite a few plpgsql functions that insert, update or delete. > They're all declared to return void. All other functions, I can just > run 'select f(...);' from psql to test them. I don't understand how to > test these ones that return void from psql. Thanks. You could issue queries to verify that the expected inserts, updates, or deletes (and only those operations) were actually done. -- Michael Fuhr http://www.fuhr.org/~mfuhr/
Thanks. I forgot the 'return;' and the error message led me in the wrong direction. Thanks! On Dec 15, 2004, at 12:43 AM, Neil Conway wrote: > Eric Brown wrote: >> I've got quite a few plpgsql functions that insert, update or delete. >> They're all declared to return void. All other functions, I can just >> run 'select f(...);' from psql to test them. I don't understand how >> to test these ones that return void from psql. > > neilc=# create function xyz() returns void as 'begin return; end;' > language 'plpgsql'; > CREATE FUNCTION > neilc=# select xyz(); > xyz > ----- > > (1 row) > > -Neil
Eric Brown wrote: > I've got quite a few plpgsql functions that insert, update or delete. > They're all declared to return void. All other functions, I can just run > 'select f(...);' from psql to test them. I don't understand how to test > these ones that return void from psql. Thanks. I always return boolean or a count of rows affected in these situations. -- Richard Huxton Archonet Ltd