Hello,
In an exception block, we can check the error code.
Is there a way to get the message and possibly the detail too ?
ereport(ERROR, \
(errcode(ERRCODE_SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION), \
=> errmsg("could not establish connection"), \
=> errdetail("%s", msg))); \
background: (Version 8.3.12)
dblink seems to sometimes only provides information of the remote
exception in the message, with a misleading errcode:
select * from dblink_send_query ('c', 'create table my_share4( a
int)');
select * from dblink_get_result('c') as t1(f1 text);
ERROR: sql error
DETAIL: ERROR: relation "my_share4" already exists
********** Error **********
ERROR: sql error
SQL state: 42601 (<= SYNTAX ERROR)
Detail: ERROR: relation "my_share4" already exists (=>
DUPLICATE TABLE)
best regards,
Marc Mamin