mirror of
https://github.com/DerTyp7/explainegy-nextjs.git
synced 2025-10-29 21:02:13 +01:00
75 lines
2.2 KiB
SQL
75 lines
2.2 KiB
SQL
-- CreateTable
|
|
CREATE TABLE "Article" (
|
|
"id" TEXT NOT NULL,
|
|
"name" TEXT NOT NULL,
|
|
"title" TEXT NOT NULL,
|
|
"introduction" TEXT NOT NULL DEFAULT '',
|
|
"imageId" TEXT,
|
|
"markdown" TEXT NOT NULL,
|
|
"contentTable" JSONB,
|
|
"categoryId" TEXT NOT NULL,
|
|
"dateCreated" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"dateUpdated" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT "Article_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Category" (
|
|
"id" TEXT NOT NULL,
|
|
"name" TEXT NOT NULL,
|
|
"title" TEXT NOT NULL,
|
|
"color" TEXT NOT NULL,
|
|
"svgId" TEXT NOT NULL,
|
|
"dateCreated" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"dateUpdated" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT "Category_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Image" (
|
|
"id" TEXT NOT NULL,
|
|
"name" TEXT NOT NULL,
|
|
"alt" TEXT NOT NULL DEFAULT '',
|
|
"url" TEXT NOT NULL DEFAULT '',
|
|
"width" INTEGER NOT NULL,
|
|
"height" INTEGER NOT NULL,
|
|
"dateCreated" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT "Image_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Svg" (
|
|
"id" TEXT NOT NULL,
|
|
"path" TEXT NOT NULL DEFAULT '',
|
|
"viewbox" TEXT NOT NULL DEFAULT '0 0 512 512',
|
|
|
|
CONSTRAINT "Svg_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Article_name_key" ON "Article"("name");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Article_title_key" ON "Article"("title");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Category_name_key" ON "Category"("name");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Category_title_key" ON "Category"("title");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Image_name_key" ON "Image"("name");
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "Article" ADD CONSTRAINT "Article_imageId_fkey" FOREIGN KEY ("imageId") REFERENCES "Image"("id") ON DELETE SET NULL ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "Article" ADD CONSTRAINT "Article_categoryId_fkey" FOREIGN KEY ("categoryId") REFERENCES "Category"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "Category" ADD CONSTRAINT "Category_svgId_fkey" FOREIGN KEY ("svgId") REFERENCES "Svg"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|