Best Practice when Encounter Invalid Stored Procedure Parameters

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

Responses

Browse pgsql-general by date

  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