45 lines
1.3 KiB
SQL
45 lines
1.3 KiB
SQL
-- CreateTable
|
|
CREATE TABLE "User" (
|
|
"id" TEXT NOT NULL,
|
|
"githubId" TEXT NOT NULL,
|
|
"username" TEXT NOT NULL,
|
|
"avatarUrl" TEXT NOT NULL,
|
|
|
|
CONSTRAINT "User_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Repository" (
|
|
"id" INTEGER NOT NULL,
|
|
"name" TEXT NOT NULL,
|
|
"owner" TEXT NOT NULL,
|
|
|
|
CONSTRAINT "Repository_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "PullRequest" (
|
|
"id" TEXT NOT NULL,
|
|
"number" INTEGER NOT NULL,
|
|
"title" TEXT NOT NULL,
|
|
"state" TEXT NOT NULL,
|
|
"created_at" TIMESTAMP(3) NOT NULL,
|
|
"closed_at" TIMESTAMP(3),
|
|
"repositoryId" INTEGER NOT NULL,
|
|
"authorId" TEXT NOT NULL,
|
|
|
|
CONSTRAINT "PullRequest_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "User_githubId_key" ON "User"("githubId");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "PullRequest_repositoryId_number_key" ON "PullRequest"("repositoryId", "number");
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "PullRequest" ADD CONSTRAINT "PullRequest_repositoryId_fkey" FOREIGN KEY ("repositoryId") REFERENCES "Repository"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "PullRequest" ADD CONSTRAINT "PullRequest_authorId_fkey" FOREIGN KEY ("authorId") REFERENCES "User"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|