-- CreateTable CREATE TABLE "Author" ( "sec_uid" TEXT NOT NULL, "uid" TEXT, "nickname" TEXT NOT NULL, "signature" TEXT, "avatar_url" TEXT, "follower_count" BIGINT NOT NULL DEFAULT 0, "total_favorited" BIGINT NOT NULL DEFAULT 0, "unique_id" TEXT, "short_id" TEXT, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" TIMESTAMP(3) NOT NULL, CONSTRAINT "Author_pkey" PRIMARY KEY ("sec_uid") ); -- CreateTable CREATE TABLE "Video" ( "aweme_id" TEXT NOT NULL, "desc" TEXT NOT NULL, "preview_title" TEXT, "duration_ms" INTEGER NOT NULL, "created_at" TIMESTAMP(3) NOT NULL, "share_url" TEXT NOT NULL, "digg_count" BIGINT NOT NULL DEFAULT 0, "comment_count" BIGINT NOT NULL DEFAULT 0, "share_count" BIGINT NOT NULL DEFAULT 0, "collect_count" BIGINT NOT NULL DEFAULT 0, "authorId" TEXT NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" TIMESTAMP(3) NOT NULL, CONSTRAINT "Video_pkey" PRIMARY KEY ("aweme_id") ); -- CreateTable CREATE TABLE "CommentUser" ( "id" TEXT NOT NULL, "nickname" TEXT NOT NULL, "avatar_url" TEXT, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" TIMESTAMP(3) NOT NULL, CONSTRAINT "CommentUser_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "Comment" ( "cid" TEXT NOT NULL, "text" TEXT NOT NULL, "digg_count" BIGINT NOT NULL DEFAULT 0, "created_at" TIMESTAMP(3) NOT NULL, "videoId" TEXT NOT NULL, "userId" TEXT NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" TIMESTAMP(3) NOT NULL, CONSTRAINT "Comment_pkey" PRIMARY KEY ("cid") ); -- CreateIndex CREATE UNIQUE INDEX "Author_uid_key" ON "Author"("uid"); -- CreateIndex CREATE INDEX "Video_authorId_idx" ON "Video"("authorId"); -- CreateIndex CREATE INDEX "Video_created_at_idx" ON "Video"("created_at"); -- CreateIndex CREATE UNIQUE INDEX "CommentUser_nickname_avatar_url_key" ON "CommentUser"("nickname", "avatar_url"); -- CreateIndex CREATE INDEX "Comment_videoId_created_at_idx" ON "Comment"("videoId", "created_at"); -- AddForeignKey ALTER TABLE "Video" ADD CONSTRAINT "Video_authorId_fkey" FOREIGN KEY ("authorId") REFERENCES "Author"("sec_uid") ON DELETE RESTRICT ON UPDATE CASCADE; -- AddForeignKey ALTER TABLE "Comment" ADD CONSTRAINT "Comment_videoId_fkey" FOREIGN KEY ("videoId") REFERENCES "Video"("aweme_id") ON DELETE RESTRICT ON UPDATE CASCADE; -- AddForeignKey ALTER TABLE "Comment" ADD CONSTRAINT "Comment_userId_fkey" FOREIGN KEY ("userId") REFERENCES "CommentUser"("id") ON DELETE RESTRICT ON UPDATE CASCADE;