CREATE TABLE IF NOT EXISTS "SystemSettingHistory" ( "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "key" varchar(128) NOT NULL, "previousValue" jsonb, "nextValue" jsonb, "reason" varchar(128), "changedAt" timestamp DEFAULT now() NOT NULL, "changedBy" uuid ); DO $$ BEGIN ALTER TABLE "SystemSettingHistory" ADD CONSTRAINT "SystemSettingHistory_changedBy_User_id_fk" FOREIGN KEY ("changedBy") REFERENCES "public"."User"("id") ON DELETE no action ON UPDATE no action; EXCEPTION WHEN duplicate_object THEN null; END $$; CREATE INDEX IF NOT EXISTS "SystemSettingHistory_key_changedAt_idx" ON "SystemSettingHistory" ("key", "changedAt" DESC);