-- CreateEnum CREATE TYPE "FileType" AS ENUM ('ALBUM', 'SONG', 'AUDIO', 'USER'); -- CreateTable CREATE TABLE "File" ( "id" UUID NOT NULL DEFAULT gen_random_uuid(), "path" TEXT NOT NULL, "originalName" TEXT NOT NULL, "fileName" TEXT NOT NULL, "size" INTEGER NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" TIMESTAMP(3) NOT NULL, "type" "FileType" NOT NULL, "userId" UUID, CONSTRAINT "File_pkey" PRIMARY KEY ("id") ); -- CreateIndex CREATE UNIQUE INDEX "File_path_key" ON "File"("path"); -- CreateIndex CREATE UNIQUE INDEX "File_fileName_key" ON "File"("fileName"); -- CreateIndex CREATE UNIQUE INDEX "File_userId_type_key" ON "File"("userId", "type"); -- AddForeignKey ALTER TABLE "File" ADD CONSTRAINT "File_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;