hello 2010/1/12 Yan Cheng Cheok <yccheok@xxxxxxxxx>: > In c++, whenever we encounter an unexpected parameters, here is what we usually did : > > bool fun(int i) { > if (i < 0) { > return false; > } > } > > void fun(int i) { > if (i < 0) { > throw std::exception("Invalid parameter"); > } > } > > void fun(int i) { > assert (i >= 0); > } > > How about stored procedure? Now, I have the following stored procedure : > > CREATE OR REPLACE FUNCTION insert_unit(text[], text[]) > RETURNS unit AS > $BODY$DECLARE > _measurement_types ALIAS FOR $1; > _measurement_units ALIAS FOR $2; > _unit unit; > BEGIN > IF array_upper(_measurement_values, 1) != array_upper(_measurement_units, 1) THEN > RAISE NOTICE 'What I should do here to return early???'; > END IF; > > May I know what is the good practice to handle invalid parameters? I am using libpq to interface with PostgreSQL. see RAISE EXCEPTION http://www.depesz.com/index.php/2008/05/14/waiting-for-84-plpgsql-raise/ Regards Pavel Stehule > > Thanks and Regards > Yan Cheng CHEOK > > > > > > -- > Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-general > -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general