-- Rename player fields in matches table -- First, add new columns as nullable ALTER TABLE "matches" ADD COLUMN "player1P1Id" INTEGER; ALTER TABLE "matches" ADD COLUMN "player1P2Id" INTEGER; ALTER TABLE "matches" ADD COLUMN "player2P1Id" INTEGER; ALTER TABLE "matches" ADD COLUMN "player2P2Id" INTEGER; -- Copy data from old columns to new columns UPDATE "matches" SET "player1P1Id" = "team1P1Id"; UPDATE "matches" SET "player1P2Id" = "team1P2Id"; UPDATE "matches" SET "player2P1Id" = "team2P1Id"; UPDATE "matches" SET "player2P2Id" = "team2P2Id"; -- Drop old foreign key constraints ALTER TABLE "matches" DROP CONSTRAINT "matches_team1P1Id_fkey"; ALTER TABLE "matches" DROP CONSTRAINT "matches_team1P2Id_fkey"; ALTER TABLE "matches" DROP CONSTRAINT "matches_team2P1Id_fkey"; ALTER TABLE "matches" DROP CONSTRAINT "matches_team2P2Id_fkey"; -- Drop old columns ALTER TABLE "matches" DROP COLUMN "team1P1Id"; ALTER TABLE "matches" DROP COLUMN "team1P2Id"; ALTER TABLE "matches" DROP COLUMN "team2P1Id"; ALTER TABLE "matches" DROP COLUMN "team2P2Id"; -- Add foreign key constraints for new columns ALTER TABLE "matches" ADD CONSTRAINT "matches_player1P1Id_fkey" FOREIGN KEY ("player1P1Id") REFERENCES "players"("id") ON DELETE RESTRICT ON UPDATE CASCADE; ALTER TABLE "matches" ADD CONSTRAINT "matches_player1P2Id_fkey" FOREIGN KEY ("player1P2Id") REFERENCES "players"("id") ON DELETE RESTRICT ON UPDATE CASCADE; ALTER TABLE "matches" ADD CONSTRAINT "matches_player2P1Id_fkey" FOREIGN KEY ("player2P1Id") REFERENCES "players"("id") ON DELETE RESTRICT ON UPDATE CASCADE; ALTER TABLE "matches" ADD CONSTRAINT "matches_player2P2Id_fkey" FOREIGN KEY ("player2P2Id") REFERENCES "players"("id") ON DELETE RESTRICT ON UPDATE CASCADE;