I'm trying to find out is it possible in ANY way to exit a trigger procedure (return/raise exception, whatever) with a JSON output. I want to do something like this:
CREATE FUNCTION users_do_before_insert() RETURNS TRIGGER AS
$$
BEGIN
IF (NEW.username = '' OR NEW.full_name = '' OR NEW.email = '') THEN
RAISE EXCEPTION json_build_object('error', 'All fields are mandatory.');
END IF;
RETURN NEW;
END;
$$
LANGUAGE 'plpgsql';
CREATE TRIGGER users_bi_trigger
BEFORE INSERT ON users
FOR EACH ROW
EXECUTE PROCEDURE users_do_before_insert();
So, the expected output would be:
{"error" : "All fields are mandatory."}
I would appreciate any help with this. Thanks in advance!