-- Spieler, deren Lage sich gerade nicht klaeren laesst, werden trotzdem -- angelegt und als Problemfall markiert. ALTER TABLE "Player" ADD COLUMN IF NOT EXISTS "isProblem" BOOLEAN NOT NULL DEFAULT false; ALTER TABLE "Player" ADD COLUMN IF NOT EXISTS "problemNote" TEXT; ALTER TABLE "Player" ADD COLUMN IF NOT EXISTS "problemSince" TIMESTAMP(3); CREATE INDEX IF NOT EXISTS "Player_isProblem_idx" ON "Player"("isProblem"); -- Wer ueber ein Redesign in einen Gruppen-CC kommt, gibt dafuer einen eigenen -- CC auf. Welcher das war, haengt am Beitritt. ALTER TABLE "CharacterMember" ADD COLUMN IF NOT EXISTS "predecessorId" INTEGER; CREATE INDEX IF NOT EXISTS "CharacterMember_predecessorId_idx" ON "CharacterMember"("predecessorId"); DO $$ BEGIN ALTER TABLE "CharacterMember" ADD CONSTRAINT "CharacterMember_predecessorId_fkey" FOREIGN KEY ("predecessorId") REFERENCES "Character"("id") ON DELETE SET NULL ON UPDATE CASCADE; EXCEPTION WHEN duplicate_object THEN NULL; END $$;