DO $$DECLARE
   this_version CONSTANT varchar := '00.01.034';
BEGIN
   PERFORM * FROM "DBVersion" WHERE version = this_version;
   IF FOUND THEN RETURN; END IF;

   CREATE TABLE public."ntf_UserNotificationPreference"
    (
        "user" uuid NOT NULL,
        "type" uuid NOT NULL,
        "channel" smallint NOT NULL,
        "ordinal" numeric NOT NULL,
        "tenant" uuid,
        "created_at" timestamp without time zone NOT NULL,
        "updated_at" timestamp without time zone NOT NULL,
        "is_active" smallint NOT NULL DEFAULT 1,
        CONSTRAINT "ntf_UserNotificationPreference_pkey" PRIMARY KEY ("user", "type", "channel"),
        CONSTRAINT "ntf_UserNotificationPreference_tenant_fkey" FOREIGN KEY ("tenant")
            REFERENCES public."ntf_Tenant" (id) MATCH SIMPLE
            ON UPDATE NO ACTION
            ON DELETE NO ACTION,
        CONSTRAINT "ntf_UserNotificationPreference_user_fkey" FOREIGN KEY ("user")
            REFERENCES public."ntf_User" (id) MATCH SIMPLE
            ON UPDATE NO ACTION
            ON DELETE NO ACTION
    );

    INSERT INTO public."DBVersion" VALUES ('DMPDB', '00.01.034', '2023-12-05 12:00:00.000000+02', now(), 'Add table ntf_UserNotificationPreference.');

END$$;