-- CreateTable CREATE TABLE "Maintenance" ( "id" SERIAL NOT NULL, "reason" TEXT NOT NULL, "beginAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "endAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, CONSTRAINT "Maintenance_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "Announcement" ( "id" SERIAL NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "content" TEXT NOT NULL, CONSTRAINT "Announcement_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "Category" ( "id" SERIAL NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "slug" TEXT NOT NULL, "name" TEXT NOT NULL, CONSTRAINT "Category_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "Talent" ( "id" SERIAL NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "logo" TEXT NOT NULL, "name" TEXT NOT NULL, "website" TEXT NOT NULL, "work" TEXT NOT NULL, "favorite" BOOLEAN NOT NULL DEFAULT false, CONSTRAINT "Talent_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "CategoriesOnTalents" ( "talentId" INTEGER NOT NULL, "categoryId" INTEGER NOT NULL, CONSTRAINT "CategoriesOnTalents_pkey" PRIMARY KEY ("talentId","categoryId") ); -- CreateTable CREATE TABLE "Post" ( "id" SERIAL NOT NULL, "slug" TEXT NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "views" INTEGER NOT NULL DEFAULT 0, "likes" INTEGER NOT NULL DEFAULT 0, CONSTRAINT "Post_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "Form" ( "id" SERIAL NOT NULL, "name" TEXT NOT NULL, "email" TEXT NOT NULL, "content" TEXT NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, CONSTRAINT "Form_pkey" PRIMARY KEY ("id") ); -- CreateIndex CREATE UNIQUE INDEX "Talent_name_key" ON "Talent"("name"); -- CreateIndex CREATE INDEX "CategoriesOnTalents_talentId_idx" ON "CategoriesOnTalents"("talentId"); -- CreateIndex CREATE INDEX "CategoriesOnTalents_categoryId_idx" ON "CategoriesOnTalents"("categoryId"); -- CreateIndex CREATE UNIQUE INDEX "Post_slug_key" ON "Post"("slug"); -- AddForeignKey ALTER TABLE "CategoriesOnTalents" ADD CONSTRAINT "CategoriesOnTalents_talentId_fkey" FOREIGN KEY ("talentId") REFERENCES "Talent"("id") ON DELETE RESTRICT ON UPDATE CASCADE; -- AddForeignKey ALTER TABLE "CategoriesOnTalents" ADD CONSTRAINT "CategoriesOnTalents_categoryId_fkey" FOREIGN KEY ("categoryId") REFERENCES "Category"("id") ON DELETE RESTRICT ON UPDATE CASCADE;