If you want exceptions, then you need to use PDO.
in case of pg_* functions and your code, you need to check whether $result has the value of false, if it does, then an error occured.
You can get the error description with pg_last_error()
Something like this:
$result = pg_query_params ( $dbconn,
'DELETE FROM questions
WHERE question_id = $1',
array ( $question_id )
);
if ($result === false) {
print pg_last_error($dbconn);
} else {
print 'everything was ok';
}
So, basically, every time you use a pg_* function, you need to check whether false was returned, that's just the way it is with those functions.
Yes, you can build your own wrappers so instead of pg_query* you call my_db_query(), which then does the return value checking and exception throwing.
Or, you could go with PDO, which is able to throw you PDOException for all the errors that can occour.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…