mirror of
https://github.com/jorgev259/soc_site-astro.git
synced 2025-06-29 07:57:41 +00:00
Add Prisma ORM
This commit is contained in:
parent
e8530f0f01
commit
bce35d73ca
15 changed files with 1296 additions and 148 deletions
658
prisma/migrations/0_init/migration.sql
Normal file
658
prisma/migrations/0_init/migration.sql
Normal file
|
|
@ -0,0 +1,658 @@
|
|||
-- CreateTable
|
||||
CREATE TABLE `Album_Animation` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NOT NULL,
|
||||
`animationId` INTEGER NOT NULL,
|
||||
|
||||
INDEX `animationId`(`animationId`),
|
||||
PRIMARY KEY (`albumId`, `animationId`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Album_Artist` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NOT NULL,
|
||||
`artistSlug` VARCHAR(255) NOT NULL,
|
||||
|
||||
INDEX `artistSlug`(`artistSlug`),
|
||||
PRIMARY KEY (`albumId`, `artistSlug`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Album_Category` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`categoryName` VARCHAR(255) NOT NULL,
|
||||
`albumId` INTEGER NOT NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
PRIMARY KEY (`categoryName`, `albumId`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Album_Classification` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NOT NULL,
|
||||
`classificationName` VARCHAR(255) NOT NULL,
|
||||
|
||||
INDEX `categoryName`(`classificationName`),
|
||||
PRIMARY KEY (`albumId`, `classificationName`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Album_Game` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`gameSlug` VARCHAR(255) NOT NULL,
|
||||
`albumId` INTEGER NOT NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
PRIMARY KEY (`gameSlug`, `albumId`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Album_Platform` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NOT NULL,
|
||||
`platformId` INTEGER NOT NULL,
|
||||
|
||||
INDEX `platformId`(`platformId`),
|
||||
PRIMARY KEY (`albumId`, `platformId`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Album_Type` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NOT NULL,
|
||||
`typeId` INTEGER NOT NULL,
|
||||
|
||||
INDEX `typeId`(`typeId`),
|
||||
PRIMARY KEY (`albumId`, `typeId`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Game_Platform` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`gameSlug` VARCHAR(255) NOT NULL,
|
||||
`platformId` INTEGER NOT NULL,
|
||||
|
||||
INDEX `platformId`(`platformId`),
|
||||
PRIMARY KEY (`gameSlug`, `platformId`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Publisher_Game` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`gameSlug` VARCHAR(255) NOT NULL,
|
||||
`publisherId` INTEGER NOT NULL,
|
||||
|
||||
INDEX `publisherId`(`publisherId`),
|
||||
PRIMARY KEY (`gameSlug`, `publisherId`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `SequelizeMeta` (
|
||||
`name` VARCHAR(255) NOT NULL,
|
||||
|
||||
UNIQUE INDEX `name`(`name`),
|
||||
PRIMARY KEY (`name`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Series_Game` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`gameSlug` VARCHAR(255) NOT NULL,
|
||||
`seriesSlug` VARCHAR(255) NOT NULL,
|
||||
|
||||
INDEX `seriesSlug`(`seriesSlug`),
|
||||
PRIMARY KEY (`gameSlug`, `seriesSlug`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `Studio_Animation` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`animationId` INTEGER NOT NULL,
|
||||
`studioSlug` VARCHAR(255) NOT NULL,
|
||||
|
||||
INDEX `studioSlug`(`studioSlug`),
|
||||
PRIMARY KEY (`animationId`, `studioSlug`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `User_Role` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`userUsername` VARCHAR(255) NOT NULL,
|
||||
`roleName` VARCHAR(255) NOT NULL,
|
||||
|
||||
INDEX `roleName`(`roleName`),
|
||||
PRIMARY KEY (`userUsername`, `roleName`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `albumHistories` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`updatedData` JSON NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`username` VARCHAR(255) NULL,
|
||||
`albumId` INTEGER NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
INDEX `username`(`username`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `albums` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`title` VARCHAR(255) NULL,
|
||||
`subTitle` TEXT NULL,
|
||||
`releaseDate` DATE NULL,
|
||||
`label` VARCHAR(255) NULL,
|
||||
`vgmdb` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`description` VARCHAR(255) NULL,
|
||||
`createdBy` VARCHAR(255) NULL,
|
||||
`status` VARCHAR(255) NULL,
|
||||
`placeholder` TEXT NULL,
|
||||
`headerColor` VARCHAR(255) NULL DEFAULT '#ffffff',
|
||||
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `animation` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`title` VARCHAR(255) NULL,
|
||||
`releaseDate` DATE NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`studioSlug` VARCHAR(255) NULL,
|
||||
`subTitle` VARCHAR(255) NULL,
|
||||
`placeholder` TEXT NULL,
|
||||
`headerColor` VARCHAR(255) NULL DEFAULT '#ffffff',
|
||||
|
||||
UNIQUE INDEX `title`(`title`),
|
||||
UNIQUE INDEX `subTitle`(`subTitle`),
|
||||
INDEX `studioSlug`(`studioSlug`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `artist` (
|
||||
`slug` VARCHAR(255) NOT NULL,
|
||||
`name` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
|
||||
PRIMARY KEY (`slug`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `availables` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`url` VARCHAR(255) NULL,
|
||||
`provider` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `category` (
|
||||
`name` VARCHAR(255) NOT NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
|
||||
PRIMARY KEY (`name`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `classification` (
|
||||
`name` VARCHAR(255) NOT NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
|
||||
PRIMARY KEY (`name`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `comments` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`text` VARCHAR(300) NULL,
|
||||
`anon` BOOLEAN NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NULL,
|
||||
`username` VARCHAR(255) NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
INDEX `username`(`username`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `config` (
|
||||
`name` VARCHAR(255) NOT NULL,
|
||||
`value` VARCHAR(255) NULL DEFAULT '',
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
|
||||
PRIMARY KEY (`name`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `discs` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`number` INTEGER NULL,
|
||||
`body` TEXT NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `downloads` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`title` VARCHAR(255) NULL,
|
||||
`small` BOOLEAN NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `favorites` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NULL,
|
||||
`username` VARCHAR(255) NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
INDEX `username`(`username`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `forgors` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`expires` DATETIME(0) NULL,
|
||||
`key` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`username` VARCHAR(255) NULL,
|
||||
|
||||
INDEX `username`(`username`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `game` (
|
||||
`slug` VARCHAR(255) NOT NULL,
|
||||
`name` VARCHAR(255) NULL,
|
||||
`releaseDate` DATE NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`placeholder` TEXT NULL,
|
||||
`headerColor` VARCHAR(255) NULL DEFAULT '#ffffff',
|
||||
|
||||
PRIMARY KEY (`slug`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `linkCategories` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`title` VARCHAR(255) NULL,
|
||||
`small` BOOLEAN NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `links` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`url` VARCHAR(255) NULL,
|
||||
`directUrl` VARCHAR(255) NULL,
|
||||
`provider` VARCHAR(255) NULL,
|
||||
`custom` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`downloadId` INTEGER NULL,
|
||||
`url2` VARCHAR(255) NULL,
|
||||
|
||||
INDEX `downloadId`(`downloadId`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `logs` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`action` VARCHAR(255) NULL,
|
||||
`data` TEXT NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`username` VARCHAR(255) NULL,
|
||||
|
||||
INDEX `username`(`username`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `pendings` (
|
||||
`id` INTEGER NOT NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `platform` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`name` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`type` VARCHAR(255) NULL DEFAULT 'Game',
|
||||
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `publisher` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`name` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `ratings` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`score` INTEGER NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NULL,
|
||||
`username` VARCHAR(255) NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
INDEX `username`(`username`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `related_album` (
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NOT NULL,
|
||||
`relatedId` INTEGER NOT NULL,
|
||||
|
||||
INDEX `relatedId`(`relatedId`),
|
||||
PRIMARY KEY (`albumId`, `relatedId`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `requests` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`title` VARCHAR(255) NULL,
|
||||
`link` VARCHAR(255) NULL,
|
||||
`user` VARCHAR(255) NULL,
|
||||
`userID` VARCHAR(255) NULL,
|
||||
`state` VARCHAR(255) NOT NULL,
|
||||
`donator` BOOLEAN NOT NULL,
|
||||
`reason` VARCHAR(255) NULL,
|
||||
`comments` VARCHAR(255) NULL,
|
||||
`message` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0),
|
||||
`updatedAt` DATETIME(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0),
|
||||
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `roles` (
|
||||
`name` VARCHAR(255) NOT NULL,
|
||||
`permissions` JSON NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
|
||||
PRIMARY KEY (`name`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `series` (
|
||||
`slug` VARCHAR(255) NOT NULL,
|
||||
`name` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`placeholder` TEXT NULL,
|
||||
`headerColor` VARCHAR(255) NULL DEFAULT '#ffffff',
|
||||
|
||||
PRIMARY KEY (`slug`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `stores` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`url` VARCHAR(255) NULL,
|
||||
`provider` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`albumId` INTEGER NULL,
|
||||
|
||||
INDEX `ostId`(`albumId`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `studio` (
|
||||
`slug` VARCHAR(255) NOT NULL,
|
||||
`name` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
|
||||
PRIMARY KEY (`slug`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `submissions` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`state` VARCHAR(255) NULL DEFAULT 'pending',
|
||||
`title` VARCHAR(255) NULL,
|
||||
`vgmdb` VARCHAR(255) NULL,
|
||||
`links` TEXT NULL,
|
||||
`score` INTEGER NULL DEFAULT 0,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`userUsername` VARCHAR(255) NULL,
|
||||
`requestId` INTEGER NULL,
|
||||
|
||||
INDEX `requestId`(`requestId`),
|
||||
INDEX `userUsername`(`userUsername`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `type` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`name` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `users` (
|
||||
`username` VARCHAR(255) NOT NULL,
|
||||
`email` VARCHAR(255) NULL,
|
||||
`password` VARCHAR(255) NULL,
|
||||
`createdAt` DATETIME(0) NOT NULL,
|
||||
`updatedAt` DATETIME(0) NOT NULL,
|
||||
`placeholder` TEXT NULL,
|
||||
`imgId` VARCHAR(255) NULL,
|
||||
|
||||
PRIMARY KEY (`username`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Animation` ADD CONSTRAINT `Album_Animation_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Animation` ADD CONSTRAINT `Album_Animation_ibfk_2` FOREIGN KEY (`animationId`) REFERENCES `animation`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Artist` ADD CONSTRAINT `Album_Artist_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Artist` ADD CONSTRAINT `Album_Artist_ibfk_2` FOREIGN KEY (`artistSlug`) REFERENCES `artist`(`slug`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Category` ADD CONSTRAINT `Album_Category_ibfk_1` FOREIGN KEY (`categoryName`) REFERENCES `category`(`name`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Category` ADD CONSTRAINT `Album_Category_ibfk_2` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Classification` ADD CONSTRAINT `Album_Classification_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Classification` ADD CONSTRAINT `Album_Classification_ibfk_2` FOREIGN KEY (`classificationName`) REFERENCES `classification`(`name`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Game` ADD CONSTRAINT `Album_Game_ibfk_1` FOREIGN KEY (`gameSlug`) REFERENCES `game`(`slug`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Game` ADD CONSTRAINT `Album_Game_ibfk_2` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Platform` ADD CONSTRAINT `Album_Platform_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Platform` ADD CONSTRAINT `Album_Platform_ibfk_2` FOREIGN KEY (`platformId`) REFERENCES `platform`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Type` ADD CONSTRAINT `Album_Type_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Album_Type` ADD CONSTRAINT `Album_Type_ibfk_2` FOREIGN KEY (`typeId`) REFERENCES `type`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Game_Platform` ADD CONSTRAINT `Game_Platform_ibfk_1` FOREIGN KEY (`gameSlug`) REFERENCES `game`(`slug`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Game_Platform` ADD CONSTRAINT `Game_Platform_ibfk_2` FOREIGN KEY (`platformId`) REFERENCES `platform`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Publisher_Game` ADD CONSTRAINT `Publisher_Game_ibfk_1` FOREIGN KEY (`gameSlug`) REFERENCES `game`(`slug`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Publisher_Game` ADD CONSTRAINT `Publisher_Game_ibfk_2` FOREIGN KEY (`publisherId`) REFERENCES `publisher`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Series_Game` ADD CONSTRAINT `Series_Game_ibfk_1` FOREIGN KEY (`gameSlug`) REFERENCES `game`(`slug`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Series_Game` ADD CONSTRAINT `Series_Game_ibfk_2` FOREIGN KEY (`seriesSlug`) REFERENCES `series`(`slug`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Studio_Animation` ADD CONSTRAINT `Studio_Animation_ibfk_1` FOREIGN KEY (`animationId`) REFERENCES `animation`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `Studio_Animation` ADD CONSTRAINT `Studio_Animation_ibfk_2` FOREIGN KEY (`studioSlug`) REFERENCES `studio`(`slug`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `User_Role` ADD CONSTRAINT `User_Role_ibfk_1` FOREIGN KEY (`userUsername`) REFERENCES `users`(`username`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `User_Role` ADD CONSTRAINT `User_Role_ibfk_2` FOREIGN KEY (`roleName`) REFERENCES `roles`(`name`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `albumHistories` ADD CONSTRAINT `albumHistories_ibfk_1` FOREIGN KEY (`username`) REFERENCES `users`(`username`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `albumHistories` ADD CONSTRAINT `albumHistories_ibfk_2` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `animation` ADD CONSTRAINT `animation_ibfk_1` FOREIGN KEY (`studioSlug`) REFERENCES `studio`(`slug`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `availables` ADD CONSTRAINT `availables_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `comments` ADD CONSTRAINT `comments_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `comments` ADD CONSTRAINT `comments_ibfk_2` FOREIGN KEY (`username`) REFERENCES `users`(`username`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `discs` ADD CONSTRAINT `discs_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `downloads` ADD CONSTRAINT `downloads_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `favorites` ADD CONSTRAINT `favorites_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `favorites` ADD CONSTRAINT `favorites_ibfk_2` FOREIGN KEY (`username`) REFERENCES `users`(`username`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `forgors` ADD CONSTRAINT `forgors_ibfk_1` FOREIGN KEY (`username`) REFERENCES `users`(`username`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `linkCategories` ADD CONSTRAINT `linkCategories_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `links` ADD CONSTRAINT `links_ibfk_1` FOREIGN KEY (`downloadId`) REFERENCES `downloads`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `logs` ADD CONSTRAINT `logs_ibfk_1` FOREIGN KEY (`username`) REFERENCES `users`(`username`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `ratings` ADD CONSTRAINT `ratings_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `ratings` ADD CONSTRAINT `ratings_ibfk_2` FOREIGN KEY (`username`) REFERENCES `users`(`username`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `related_album` ADD CONSTRAINT `related_album_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `related_album` ADD CONSTRAINT `related_album_ibfk_2` FOREIGN KEY (`relatedId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `stores` ADD CONSTRAINT `stores_ibfk_1` FOREIGN KEY (`albumId`) REFERENCES `albums`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `submissions` ADD CONSTRAINT `submissions_ibfk_1` FOREIGN KEY (`userUsername`) REFERENCES `users`(`username`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE `submissions` ADD CONSTRAINT `submissions_ibfk_2` FOREIGN KEY (`requestId`) REFERENCES `requests`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
530
prisma/schema.prisma
Normal file
530
prisma/schema.prisma
Normal file
|
|
@ -0,0 +1,530 @@
|
|||
generator client {
|
||||
provider = "prisma-client-js"
|
||||
previewFeatures = ["fullTextSearch"]
|
||||
}
|
||||
|
||||
datasource db {
|
||||
provider = "mysql"
|
||||
url = env("DATABASE_URL")
|
||||
}
|
||||
|
||||
model Album_Animation {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int
|
||||
animationId Int
|
||||
albums albums @relation(fields: [albumId], references: [id], onDelete: Cascade, map: "Album_Animation_ibfk_1")
|
||||
animation animation @relation(fields: [animationId], references: [id], onDelete: Cascade, map: "Album_Animation_ibfk_2")
|
||||
|
||||
@@id([albumId, animationId])
|
||||
@@index([animationId], map: "animationId")
|
||||
}
|
||||
|
||||
model Album_Artist {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int
|
||||
artistSlug String @db.VarChar(255)
|
||||
albums albums @relation(fields: [albumId], references: [id], onDelete: Cascade, map: "Album_Artist_ibfk_1")
|
||||
artist artist @relation(fields: [artistSlug], references: [slug], onDelete: Cascade, map: "Album_Artist_ibfk_2")
|
||||
|
||||
@@id([albumId, artistSlug])
|
||||
@@index([artistSlug], map: "artistSlug")
|
||||
}
|
||||
|
||||
model Album_Category {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
categoryName String @db.VarChar(255)
|
||||
albumId Int
|
||||
category category @relation(fields: [categoryName], references: [name], onDelete: Cascade, map: "Album_Category_ibfk_1")
|
||||
albums albums @relation(fields: [albumId], references: [id], onDelete: Cascade, map: "Album_Category_ibfk_2")
|
||||
|
||||
@@id([categoryName, albumId])
|
||||
@@index([albumId], map: "ostId")
|
||||
}
|
||||
|
||||
model Album_Classification {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int
|
||||
classificationName String @db.VarChar(255)
|
||||
albums albums @relation(fields: [albumId], references: [id], onDelete: Cascade, map: "Album_Classification_ibfk_1")
|
||||
classification classification @relation(fields: [classificationName], references: [name], onDelete: Cascade, map: "Album_Classification_ibfk_2")
|
||||
|
||||
@@id([albumId, classificationName])
|
||||
@@index([classificationName], map: "categoryName")
|
||||
}
|
||||
|
||||
model Album_Game {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
gameSlug String @db.VarChar(255)
|
||||
albumId Int
|
||||
game game @relation(fields: [gameSlug], references: [slug], onDelete: Cascade, map: "Album_Game_ibfk_1")
|
||||
albums albums @relation(fields: [albumId], references: [id], onDelete: Cascade, map: "Album_Game_ibfk_2")
|
||||
|
||||
@@id([gameSlug, albumId])
|
||||
@@index([albumId], map: "ostId")
|
||||
}
|
||||
|
||||
model Album_Platform {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int
|
||||
platformId Int
|
||||
albums albums @relation(fields: [albumId], references: [id], onDelete: Cascade, map: "Album_Platform_ibfk_1")
|
||||
platform platform @relation(fields: [platformId], references: [id], onDelete: Cascade, map: "Album_Platform_ibfk_2")
|
||||
|
||||
@@id([albumId, platformId])
|
||||
@@index([platformId], map: "platformId")
|
||||
}
|
||||
|
||||
model Album_Type {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int
|
||||
typeId Int
|
||||
albums albums @relation(fields: [albumId], references: [id], onDelete: Cascade, map: "Album_Type_ibfk_1")
|
||||
type type @relation(fields: [typeId], references: [id], onDelete: Cascade, map: "Album_Type_ibfk_2")
|
||||
|
||||
@@id([albumId, typeId])
|
||||
@@index([typeId], map: "typeId")
|
||||
}
|
||||
|
||||
model Game_Platform {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
gameSlug String @db.VarChar(255)
|
||||
platformId Int
|
||||
game game @relation(fields: [gameSlug], references: [slug], onDelete: Cascade, map: "Game_Platform_ibfk_1")
|
||||
platform platform @relation(fields: [platformId], references: [id], onDelete: Cascade, map: "Game_Platform_ibfk_2")
|
||||
|
||||
@@id([gameSlug, platformId])
|
||||
@@index([platformId], map: "platformId")
|
||||
}
|
||||
|
||||
model Publisher_Game {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
gameSlug String @db.VarChar(255)
|
||||
publisherId Int
|
||||
game game @relation(fields: [gameSlug], references: [slug], onDelete: Cascade, map: "Publisher_Game_ibfk_1")
|
||||
publisher publisher @relation(fields: [publisherId], references: [id], onDelete: Cascade, map: "Publisher_Game_ibfk_2")
|
||||
|
||||
@@id([gameSlug, publisherId])
|
||||
@@index([publisherId], map: "publisherId")
|
||||
}
|
||||
|
||||
model SequelizeMeta {
|
||||
name String @id @unique(map: "name") @db.VarChar(255)
|
||||
}
|
||||
|
||||
model Series_Game {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
gameSlug String @db.VarChar(255)
|
||||
seriesSlug String @db.VarChar(255)
|
||||
game game @relation(fields: [gameSlug], references: [slug], onDelete: Cascade, map: "Series_Game_ibfk_1")
|
||||
series series @relation(fields: [seriesSlug], references: [slug], onDelete: Cascade, map: "Series_Game_ibfk_2")
|
||||
|
||||
@@id([gameSlug, seriesSlug])
|
||||
@@index([seriesSlug], map: "seriesSlug")
|
||||
}
|
||||
|
||||
model Studio_Animation {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
animationId Int
|
||||
studioSlug String @db.VarChar(255)
|
||||
animation animation @relation(fields: [animationId], references: [id], onDelete: Cascade, map: "Studio_Animation_ibfk_1")
|
||||
studio studio @relation(fields: [studioSlug], references: [slug], onDelete: Cascade, map: "Studio_Animation_ibfk_2")
|
||||
|
||||
@@id([animationId, studioSlug])
|
||||
@@index([studioSlug], map: "studioSlug")
|
||||
}
|
||||
|
||||
model User_Role {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
userUsername String @db.VarChar(255)
|
||||
roleName String @db.VarChar(255)
|
||||
users users @relation(fields: [userUsername], references: [username], onDelete: Cascade, map: "User_Role_ibfk_1")
|
||||
roles roles @relation(fields: [roleName], references: [name], onDelete: Cascade, map: "User_Role_ibfk_2")
|
||||
|
||||
@@id([userUsername, roleName])
|
||||
@@index([roleName], map: "roleName")
|
||||
}
|
||||
|
||||
model albumHistories {
|
||||
id Int @id @default(autoincrement())
|
||||
updatedData Json?
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
username String? @db.VarChar(255)
|
||||
albumId Int?
|
||||
users users? @relation(fields: [username], references: [username], map: "albumHistories_ibfk_1")
|
||||
albums albums? @relation(fields: [albumId], references: [id], map: "albumHistories_ibfk_2")
|
||||
|
||||
@@index([albumId], map: "ostId")
|
||||
@@index([username], map: "username")
|
||||
}
|
||||
|
||||
model albums {
|
||||
id Int @id @default(autoincrement())
|
||||
title String? @db.VarChar(255)
|
||||
subTitle String? @db.Text
|
||||
releaseDate DateTime? @db.Date
|
||||
label String? @db.VarChar(255)
|
||||
vgmdb String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
description String? @db.VarChar(255)
|
||||
createdBy String? @db.VarChar(255)
|
||||
status String? @db.VarChar(255)
|
||||
placeholder String? @db.Text
|
||||
headerColor String? @default("#ffffff") @db.VarChar(255)
|
||||
Album_Animation Album_Animation[]
|
||||
Album_Artist Album_Artist[]
|
||||
Album_Category Album_Category[]
|
||||
Album_Classification Album_Classification[]
|
||||
Album_Game Album_Game[]
|
||||
Album_Platform Album_Platform[]
|
||||
Album_Type Album_Type[]
|
||||
albumHistories albumHistories[]
|
||||
availables availables[]
|
||||
comments comments[]
|
||||
discs discs[]
|
||||
downloads downloads[]
|
||||
favorites favorites[]
|
||||
linkCategories linkCategories[]
|
||||
ratings ratings[]
|
||||
related_album_related_album_albumIdToalbums related_album[] @relation("related_album_albumIdToalbums")
|
||||
related_album_related_album_relatedIdToalbums related_album[] @relation("related_album_relatedIdToalbums")
|
||||
stores stores[]
|
||||
}
|
||||
|
||||
model animation {
|
||||
id Int @id @default(autoincrement())
|
||||
title String? @unique(map: "title") @db.VarChar(255)
|
||||
releaseDate DateTime? @db.Date
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
studioSlug String? @db.VarChar(255)
|
||||
subTitle String? @unique(map: "subTitle") @db.VarChar(255)
|
||||
placeholder String? @db.Text
|
||||
headerColor String? @default("#ffffff") @db.VarChar(255)
|
||||
Album_Animation Album_Animation[]
|
||||
Studio_Animation Studio_Animation[]
|
||||
studio studio? @relation(fields: [studioSlug], references: [slug], map: "animation_ibfk_1")
|
||||
|
||||
@@index([studioSlug], map: "studioSlug")
|
||||
}
|
||||
|
||||
model artist {
|
||||
slug String @id @db.VarChar(255)
|
||||
name String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
Album_Artist Album_Artist[]
|
||||
}
|
||||
|
||||
model availables {
|
||||
id Int @id @default(autoincrement())
|
||||
url String? @db.VarChar(255)
|
||||
provider String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int?
|
||||
albums albums? @relation(fields: [albumId], references: [id], map: "availables_ibfk_1")
|
||||
|
||||
@@index([albumId], map: "ostId")
|
||||
}
|
||||
|
||||
model category {
|
||||
name String @id @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
Album_Category Album_Category[]
|
||||
}
|
||||
|
||||
model classification {
|
||||
name String @id @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
Album_Classification Album_Classification[]
|
||||
}
|
||||
|
||||
model comments {
|
||||
id Int @id @default(autoincrement())
|
||||
text String? @db.VarChar(300)
|
||||
anon Boolean?
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int?
|
||||
username String? @db.VarChar(255)
|
||||
albums albums? @relation(fields: [albumId], references: [id], map: "comments_ibfk_1")
|
||||
users users? @relation(fields: [username], references: [username], map: "comments_ibfk_2")
|
||||
|
||||
@@index([albumId], map: "ostId")
|
||||
@@index([username], map: "username")
|
||||
}
|
||||
|
||||
model config {
|
||||
name String @id @db.VarChar(255)
|
||||
value String? @default("") @db.VarChar(255)
|
||||
createdAt DateTime @default(now()) @db.DateTime(0)
|
||||
updatedAt DateTime @default(now()) @db.DateTime(0)
|
||||
}
|
||||
|
||||
model discs {
|
||||
id Int @id @default(autoincrement())
|
||||
number Int?
|
||||
body String? @db.Text
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int?
|
||||
albums albums? @relation(fields: [albumId], references: [id], map: "discs_ibfk_1")
|
||||
|
||||
@@index([albumId], map: "ostId")
|
||||
}
|
||||
|
||||
model downloads {
|
||||
id Int @id @default(autoincrement())
|
||||
title String? @db.VarChar(255)
|
||||
small Boolean?
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int?
|
||||
albums albums? @relation(fields: [albumId], references: [id], onDelete: Cascade, map: "downloads_ibfk_1")
|
||||
links links[]
|
||||
|
||||
@@index([albumId], map: "ostId")
|
||||
}
|
||||
|
||||
model favorites {
|
||||
id Int @id @default(autoincrement())
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int?
|
||||
username String? @db.VarChar(255)
|
||||
albums albums? @relation(fields: [albumId], references: [id], map: "favorites_ibfk_1")
|
||||
users users? @relation(fields: [username], references: [username], map: "favorites_ibfk_2")
|
||||
|
||||
@@index([albumId], map: "ostId")
|
||||
@@index([username], map: "username")
|
||||
}
|
||||
|
||||
model forgors {
|
||||
id Int @id @default(autoincrement())
|
||||
expires DateTime? @db.DateTime(0)
|
||||
key String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
username String? @db.VarChar(255)
|
||||
users users? @relation(fields: [username], references: [username], map: "forgors_ibfk_1")
|
||||
|
||||
@@index([username], map: "username")
|
||||
}
|
||||
|
||||
model game {
|
||||
slug String @id @db.VarChar(255)
|
||||
name String? @db.VarChar(255)
|
||||
releaseDate DateTime? @db.Date
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
placeholder String? @db.Text
|
||||
headerColor String? @default("#ffffff") @db.VarChar(255)
|
||||
Album_Game Album_Game[]
|
||||
Game_Platform Game_Platform[]
|
||||
Publisher_Game Publisher_Game[]
|
||||
Series_Game Series_Game[]
|
||||
}
|
||||
|
||||
model linkCategories {
|
||||
id Int @id @default(autoincrement())
|
||||
title String? @db.VarChar(255)
|
||||
small Boolean?
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int?
|
||||
albums albums? @relation(fields: [albumId], references: [id], map: "linkCategories_ibfk_1")
|
||||
|
||||
@@index([albumId], map: "ostId")
|
||||
}
|
||||
|
||||
model links {
|
||||
id Int @id @default(autoincrement())
|
||||
url String? @db.VarChar(255)
|
||||
directUrl String? @db.VarChar(255)
|
||||
provider String? @db.VarChar(255)
|
||||
custom String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
downloadId Int?
|
||||
url2 String? @db.VarChar(255)
|
||||
downloads downloads? @relation(fields: [downloadId], references: [id], map: "links_ibfk_1")
|
||||
|
||||
@@index([downloadId], map: "downloadId")
|
||||
}
|
||||
|
||||
model logs {
|
||||
id Int @id @default(autoincrement())
|
||||
action String? @db.VarChar(255)
|
||||
data String? @db.Text
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
username String? @db.VarChar(255)
|
||||
users users? @relation(fields: [username], references: [username], map: "logs_ibfk_1")
|
||||
|
||||
@@index([username], map: "username")
|
||||
}
|
||||
|
||||
model pendings {
|
||||
id Int @id
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
}
|
||||
|
||||
model platform {
|
||||
id Int @id @default(autoincrement())
|
||||
name String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
type String? @default("Game") @db.VarChar(255)
|
||||
Album_Platform Album_Platform[]
|
||||
Game_Platform Game_Platform[]
|
||||
}
|
||||
|
||||
model publisher {
|
||||
id Int @id @default(autoincrement())
|
||||
name String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
Publisher_Game Publisher_Game[]
|
||||
}
|
||||
|
||||
model ratings {
|
||||
id Int @id @default(autoincrement())
|
||||
score Int?
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int?
|
||||
username String? @db.VarChar(255)
|
||||
albums albums? @relation(fields: [albumId], references: [id], map: "ratings_ibfk_1")
|
||||
users users? @relation(fields: [username], references: [username], map: "ratings_ibfk_2")
|
||||
|
||||
@@index([albumId], map: "ostId")
|
||||
@@index([username], map: "username")
|
||||
}
|
||||
|
||||
model related_album {
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int
|
||||
relatedId Int
|
||||
albums_related_album_albumIdToalbums albums @relation("related_album_albumIdToalbums", fields: [albumId], references: [id], onDelete: Cascade, map: "related_album_ibfk_1")
|
||||
albums_related_album_relatedIdToalbums albums @relation("related_album_relatedIdToalbums", fields: [relatedId], references: [id], onDelete: Cascade, map: "related_album_ibfk_2")
|
||||
|
||||
@@id([albumId, relatedId])
|
||||
@@index([relatedId], map: "relatedId")
|
||||
}
|
||||
|
||||
model requests {
|
||||
id Int @id @default(autoincrement())
|
||||
title String? @db.VarChar(255)
|
||||
link String? @db.VarChar(255)
|
||||
user String? @db.VarChar(255)
|
||||
userID String? @db.VarChar(255)
|
||||
state String @db.VarChar(255)
|
||||
donator Boolean
|
||||
reason String? @db.VarChar(255)
|
||||
comments String? @db.VarChar(255)
|
||||
message String? @db.VarChar(255)
|
||||
createdAt DateTime @default(now()) @db.DateTime(0)
|
||||
updatedAt DateTime @default(now()) @db.DateTime(0)
|
||||
submissions submissions[]
|
||||
}
|
||||
|
||||
model roles {
|
||||
name String @id @db.VarChar(255)
|
||||
permissions Json?
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
User_Role User_Role[]
|
||||
}
|
||||
|
||||
model series {
|
||||
slug String @id @db.VarChar(255)
|
||||
name String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
placeholder String? @db.Text
|
||||
headerColor String? @default("#ffffff") @db.VarChar(255)
|
||||
Series_Game Series_Game[]
|
||||
}
|
||||
|
||||
model stores {
|
||||
id Int @id @default(autoincrement())
|
||||
url String? @db.VarChar(255)
|
||||
provider String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
albumId Int?
|
||||
albums albums? @relation(fields: [albumId], references: [id], onDelete: Cascade, map: "stores_ibfk_1")
|
||||
|
||||
@@index([albumId], map: "ostId")
|
||||
}
|
||||
|
||||
model studio {
|
||||
slug String @id @db.VarChar(255)
|
||||
name String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
Studio_Animation Studio_Animation[]
|
||||
animation animation[]
|
||||
}
|
||||
|
||||
model submissions {
|
||||
id Int @id @default(autoincrement())
|
||||
state String? @default("pending") @db.VarChar(255)
|
||||
title String? @db.VarChar(255)
|
||||
vgmdb String? @db.VarChar(255)
|
||||
links String? @db.Text
|
||||
score Int? @default(0)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
userUsername String? @db.VarChar(255)
|
||||
requestId Int?
|
||||
users users? @relation(fields: [userUsername], references: [username], map: "submissions_ibfk_1")
|
||||
requests requests? @relation(fields: [requestId], references: [id], map: "submissions_ibfk_2")
|
||||
|
||||
@@index([requestId], map: "requestId")
|
||||
@@index([userUsername], map: "userUsername")
|
||||
}
|
||||
|
||||
model type {
|
||||
id Int @id @default(autoincrement())
|
||||
name String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
Album_Type Album_Type[]
|
||||
}
|
||||
|
||||
model users {
|
||||
username String @id @db.VarChar(255)
|
||||
email String? @db.VarChar(255)
|
||||
password String? @db.VarChar(255)
|
||||
createdAt DateTime @db.DateTime(0)
|
||||
updatedAt DateTime @db.DateTime(0)
|
||||
placeholder String? @db.Text
|
||||
imgId String? @db.VarChar(255)
|
||||
User_Role User_Role[]
|
||||
albumHistories albumHistories[]
|
||||
comments comments[]
|
||||
favorites favorites[]
|
||||
forgors forgors[]
|
||||
logs logs[]
|
||||
ratings ratings[]
|
||||
submissions submissions[]
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue