From: | Yan Cheng Cheok <yccheok(at)yahoo(dot)com> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Best Practice when Encounter Invalid Stored Procedure Parameters |
Date: | 2010-01-12 02:12:18 |
Message-ID: | 837103.5437.qm@web65715.mail.ac4.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
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.
Thanks and Regards
Yan Cheng CHEOK
From | Date | Subject | |
---|---|---|---|
Next Message | AI Rumman | 2010-01-12 04:26:22 | Re: transaction logging in the form of SQL statements |
Previous Message | Craig Ringer | 2010-01-12 01:51:05 | Re: replication from multiple "master" servers to a single read-only slave |