@@ -3,30 +3,31 @@ CREATE TYPE "ActionType" AS ENUM ('CREATED', 'VOTED');
33
44-- CreateTable
55CREATE TABLE "User " (
6+ " id" SERIAL NOT NULL ,
67 " worldID" TEXT NOT NULL ,
78 " name" TEXT NOT NULL ,
89 " profilePicture" TEXT ,
910 " pollsCreatedCount" INTEGER NOT NULL DEFAULT 0 ,
1011 " pollsParticipatedCount" INTEGER NOT NULL DEFAULT 0 ,
1112
12- CONSTRAINT " User_pkey" PRIMARY KEY (" worldID " )
13+ CONSTRAINT " User_pkey" PRIMARY KEY (" id " )
1314);
1415
1516-- CreateTable
1617CREATE TABLE "UserAction " (
17- " id" TEXT NOT NULL ,
18- " worldID " TEXT NOT NULL ,
18+ " id" SERIAL NOT NULL ,
19+ " userId " INTEGER NOT NULL ,
1920 " actionID" TEXT NOT NULL ,
20- " pollID " TEXT NOT NULL ,
21+ " pollId " INTEGER NOT NULL ,
2122 " type" " ActionType" NOT NULL ,
2223
2324 CONSTRAINT " UserAction_pkey" PRIMARY KEY (" id" )
2425);
2526
2627-- CreateTable
2728CREATE TABLE "Poll " (
28- " pollID " TEXT NOT NULL ,
29- " authorUserID " TEXT NOT NULL ,
29+ " pollId " SERIAL NOT NULL ,
30+ " authorUserId " INTEGER NOT NULL ,
3031 " title" TEXT NOT NULL ,
3132 " description" TEXT ,
3233 " options" TEXT [],
@@ -38,32 +39,38 @@ CREATE TABLE "Poll" (
3839 " participantCount" INTEGER NOT NULL DEFAULT 0 ,
3940 " voteResults" JSONB NOT NULL ,
4041
41- CONSTRAINT " Poll_pkey" PRIMARY KEY (" pollID " )
42+ CONSTRAINT " Poll_pkey" PRIMARY KEY (" pollId " )
4243);
4344
4445-- CreateTable
4546CREATE TABLE "Vote " (
4647 " voteID" TEXT NOT NULL ,
47- " worldID " TEXT NOT NULL ,
48- " pollID " TEXT NOT NULL ,
48+ " userId " INTEGER NOT NULL ,
49+ " pollId " INTEGER NOT NULL ,
4950 " votingPower" INTEGER NOT NULL ,
5051 " weightDistribution" JSONB NOT NULL ,
5152 " proof" TEXT NOT NULL ,
5253
5354 CONSTRAINT " Vote_pkey" PRIMARY KEY (" voteID" )
5455);
5556
57+ -- CreateIndex
58+ CREATE UNIQUE INDEX "User_worldID_key " ON " User" (" worldID" );
59+
5660-- CreateIndex
5761CREATE UNIQUE INDEX "UserAction_actionID_key " ON " UserAction" (" actionID" );
5862
5963-- AddForeignKey
60- ALTER TABLE " UserAction" ADD CONSTRAINT " UserAction_worldID_fkey" FOREIGN KEY (" worldID" ) REFERENCES " User" (" worldID" ) ON DELETE CASCADE ON UPDATE CASCADE;
64+ ALTER TABLE " UserAction" ADD CONSTRAINT " UserAction_userId_fkey" FOREIGN KEY (" userId" ) REFERENCES " User" (" id" ) ON DELETE RESTRICT ON UPDATE CASCADE;
65+
66+ -- AddForeignKey
67+ ALTER TABLE " UserAction" ADD CONSTRAINT " UserAction_pollId_fkey" FOREIGN KEY (" pollId" ) REFERENCES " Poll" (" pollId" ) ON DELETE RESTRICT ON UPDATE CASCADE;
6168
6269-- AddForeignKey
63- ALTER TABLE " Poll" ADD CONSTRAINT " Poll_authorUserID_fkey " FOREIGN KEY (" authorUserID " ) REFERENCES " User" (" worldID " ) ON DELETE CASCADE ON UPDATE CASCADE;
70+ ALTER TABLE " Poll" ADD CONSTRAINT " Poll_authorUserId_fkey " FOREIGN KEY (" authorUserId " ) REFERENCES " User" (" id " ) ON DELETE RESTRICT ON UPDATE CASCADE;
6471
6572-- AddForeignKey
66- ALTER TABLE " Vote" ADD CONSTRAINT " Vote_worldID_fkey " FOREIGN KEY (" worldID " ) REFERENCES " User" (" worldID " ) ON DELETE CASCADE ON UPDATE CASCADE;
73+ ALTER TABLE " Vote" ADD CONSTRAINT " Vote_userId_fkey " FOREIGN KEY (" userId " ) REFERENCES " User" (" id " ) ON DELETE RESTRICT ON UPDATE CASCADE;
6774
6875-- AddForeignKey
69- ALTER TABLE " Vote" ADD CONSTRAINT " Vote_pollID_fkey " FOREIGN KEY (" pollID " ) REFERENCES " Poll" (" pollID " ) ON DELETE CASCADE ON UPDATE CASCADE;
76+ ALTER TABLE " Vote" ADD CONSTRAINT " Vote_pollId_fkey " FOREIGN KEY (" pollId " ) REFERENCES " Poll" (" pollId " ) ON DELETE RESTRICT ON UPDATE CASCADE;
0 commit comments