Enhanced diagnostics statement
Skočit na navigaci
Skočit na vyhledávání
- resignal statement CREATE OR REPLACE FUNCTION cc() RETURNS void AS $$ BEGIN DECLARE frk CONDITION; DECLARE brk CONDITION; DECLARE x, y, z text; DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN GET STACKED DIAGNOSTICS x = CONDITION_IDENTIFIER, y = RETURNED_SQLSTATE; GET STACKED DIAGNOSTICS CONDITION 1 z = MESSAGE_TEXT; PRINT 'handler >', x,',', y,',', z; GET DIAGNOSTICS x = CONDITION_IDENTIFIER, y = RETURNED_SQLSTATE, z = MESSAGE_TEXT; PRINT 'handler >', x,',', y,',', z; RESIGNAL SET PG_MESSAGE_DETAIL = 'any detail'; END; PRINT 'start'; SIGNAL frk; SIGNAL SQLSTATE '33333' SET MESSAGE_TEXT = 'err message'; PRINT 'finish'; END; $$ LANGUAGE plpgpsm; SELECT cc();