Squashing

This commit is contained in:
Luke Vella 2024-12-19 16:46:32 +00:00
parent 3a526d53b4
commit 9e07ea1a4a
No known key found for this signature in database
GPG key ID: 469CAD687F0D784C
5 changed files with 47 additions and 49 deletions

View file

@ -22,4 +22,30 @@ BEGIN
WHERE id = participant_record.id;
END LOOP;
END;
$$;
-- Create guest users for comments without user_id and link them
DO $$
DECLARE
comment_record RECORD;
BEGIN
FOR comment_record IN
SELECT id, author_name
FROM comments
WHERE user_id IS NULL
LOOP
WITH new_user AS (
INSERT INTO users (id, is_guest, created_at)
VALUES (
gen_random_uuid()::text,
TRUE,
NOW()
)
RETURNING id
)
UPDATE comments
SET user_id = (SELECT id FROM new_user)
WHERE id = comment_record.id;
END LOOP;
END;
$$;

View file

@ -1,11 +0,0 @@
/*
Warnings:
- Made the column `user_id` on table `participants` required. This step will fail if there are existing NULL values in that column.
*/
-- AlterTable
ALTER TABLE "participants" ALTER COLUMN "user_id" SET NOT NULL;
-- AddForeignKey
ALTER TABLE "participants" ADD CONSTRAINT "participants_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "users"("id") ON DELETE RESTRICT ON UPDATE CASCADE;

View file

@ -1,5 +0,0 @@
-- DropForeignKey
ALTER TABLE "participants" DROP CONSTRAINT "participants_user_id_fkey";
-- AddForeignKey
ALTER TABLE "participants" ADD CONSTRAINT "participants_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "users"("id") ON DELETE CASCADE ON UPDATE CASCADE;

View file

@ -1,33 +0,0 @@
-- Create guest users for comments without user_id and link them
DO $$
DECLARE
comment_record RECORD;
BEGIN
FOR comment_record IN
SELECT id, author_name
FROM comments
WHERE user_id IS NULL
LOOP
WITH new_user AS (
INSERT INTO users (id, is_guest, created_at)
VALUES (
gen_random_uuid()::text,
TRUE,
NOW()
)
RETURNING id
)
UPDATE comments
SET user_id = (SELECT id FROM new_user)
WHERE id = comment_record.id;
END LOOP;
END;
$$;
-- DropForeignKey
ALTER TABLE "comments" DROP CONSTRAINT "comments_user_id_fkey";
-- AlterTable
ALTER TABLE "comments" ALTER COLUMN "user_id" SET NOT NULL;
-- AddForeignKey
ALTER TABLE "comments" ADD CONSTRAINT "comments_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "users"("id") ON DELETE RESTRICT ON UPDATE CASCADE;

View file

@ -0,0 +1,21 @@
/*
Warnings:
- Made the column `user_id` on table `comments` required. This step will fail if there are existing NULL values in that column.
- Made the column `user_id` on table `participants` required. This step will fail if there are existing NULL values in that column.
*/
-- DropForeignKey
ALTER TABLE "comments" DROP CONSTRAINT "comments_user_id_fkey";
-- AlterTable
ALTER TABLE "comments" ALTER COLUMN "user_id" SET NOT NULL;
-- AlterTable
ALTER TABLE "participants" ALTER COLUMN "user_id" SET NOT NULL;
-- AddForeignKey
ALTER TABLE "participants" ADD CONSTRAINT "participants_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "users"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "comments" ADD CONSTRAINT "comments_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "users"("id") ON DELETE RESTRICT ON UPDATE CASCADE;