12 lines
441 B
SQL
12 lines
441 B
SQL
-- AlterTable
|
|
ALTER TABLE "court_bookings" ADD COLUMN "booking_code" VARCHAR(8);
|
|
|
|
-- Backfill existing rows
|
|
UPDATE "court_bookings"
|
|
SET "booking_code" = UPPER(SUBSTRING(REPLACE("id"::text, '-', '') FROM 1 FOR 8))
|
|
WHERE "booking_code" IS NULL;
|
|
|
|
-- Enforce not-null and uniqueness
|
|
ALTER TABLE "court_bookings" ALTER COLUMN "booking_code" SET NOT NULL;
|
|
CREATE UNIQUE INDEX "court_bookings_booking_code_key" ON "court_bookings"("booking_code");
|