-- CreateTable CREATE TABLE "User" ( "id" SERIAL NOT NULL, "username" VARCHAR(50) NOT NULL, "email" TEXT NOT NULL, "password" TEXT NOT NULL, CONSTRAINT "User_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "File" ( "id" SERIAL NOT NULL, "name" VARCHAR(255) NOT NULL, "url" TEXT NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "ownerId" INTEGER, "folderId" INTEGER, CONSTRAINT "File_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "Folder" ( "id" SERIAL NOT NULL, "name" VARCHAR(255) NOT NULL, CONSTRAINT "Folder_pkey" PRIMARY KEY ("id") ); -- CreateIndex CREATE UNIQUE INDEX "User_username_key" ON "User"("username"); -- CreateIndex CREATE UNIQUE INDEX "User_email_key" ON "User"("email"); -- AddForeignKey ALTER TABLE "File" ADD CONSTRAINT "File_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES "User"("id") ON DELETE SET NULL ON UPDATE CASCADE; -- AddForeignKey ALTER TABLE "File" ADD CONSTRAINT "File_folderId_fkey" FOREIGN KEY ("folderId") REFERENCES "Folder"("id") ON DELETE SET NULL ON UPDATE CASCADE;