Add cover art database

Co-authored-by: Job Curtis <job.curtis@gmail.com>
Co-authored-by: Alex Cabal <alex@standardebooks.org>
This commit is contained in:
Mike Colagrosso 2023-12-28 16:38:39 -06:00 committed by Alex Cabal
parent 74f747df76
commit 6a5c05511a
92 changed files with 3174 additions and 146 deletions

View file

@ -0,0 +1,5 @@
CREATE TABLE `ArtistAlternateSpellings` (
`ArtistId` int(10) unsigned NOT NULL,
`AlternateSpelling` varchar(255) NOT NULL,
UNIQUE KEY `idxUnique` (`ArtistId`,`AlternateSpelling`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

10
config/sql/se/Artists.sql Normal file
View file

@ -0,0 +1,10 @@
CREATE TABLE `Artists` (
`ArtistId` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Name` varchar(191) NOT NULL,
`UrlName` varchar(255) NOT NULL,
`DeathYear` smallint unsigned NULL,
`Created` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Updated` timestamp NOT NULL,
PRIMARY KEY (`ArtistId`),
UNIQUE KEY `idxUnique` (`UrlName`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

View file

@ -0,0 +1,5 @@
CREATE TABLE `ArtworkTags` (
`ArtworkId` int(10) unsigned NOT NULL,
`TagId` int(10) unsigned NOT NULL,
UNIQUE KEY `idxUnique` (`ArtworkId`,`TagId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

View file

@ -0,0 +1,24 @@
CREATE TABLE `Artworks` (
`ArtworkId` int(10) unsigned NOT NULL AUTO_INCREMENT,
`ArtistId` int(10) unsigned NOT NULL,
`Name` varchar(255) NOT NULL,
`UrlName` varchar(255) NOT NULL,
`CompletedYear` smallint unsigned NULL,
`CompletedYearIsCirca` boolean NOT NULL DEFAULT FALSE,
`Created` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Updated` timestamp NOT NULL,
`Status` enum('unverified', 'approved', 'declined', 'in_use') DEFAULT 'unverified',
`ReviewerUserId` int(10) unsigned NULL,
`MuseumUrl` varchar(255) NULL,
`PublicationYear` smallint unsigned NULL,
`PublicationYearPageUrl` varchar(255) NULL,
`CopyrightPageUrl` varchar(255) NULL,
`ArtworkPageUrl` varchar(255) NULL,
`IsPublishedInUs` tinyint(1) NOT NULL DEFAULT FALSE,
`EbookWwwFilesystemPath` varchar(255) NULL,
`MimeType` varchar(64) NOT NULL,
`Exception` TEXT NULL DEFAULT NULL,
PRIMARY KEY (`ArtworkId`),
KEY `index1` (`Status`),
KEY `index2` (`UrlName`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

View file

@ -3,6 +3,8 @@ CREATE TABLE `Benefits` (
`CanAccessFeeds` tinyint(1) unsigned NOT NULL,
`CanVote` tinyint(1) unsigned NOT NULL,
`CanBulkDownload` tinyint(1) unsigned NOT NULL,
`CanAddArtwork` tinyint(1) unsigned NOT NULL,
`CanReviewArtwork` tinyint(1) unsigned NOT NULL,
PRIMARY KEY (`UserId`),
KEY `idxBenefits` (`CanAccessFeeds`,`CanVote`,`CanBulkDownload`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

View file

@ -1,5 +1,5 @@
CREATE TABLE `FeedUserAgents` (
`UserAgentId` int(11) unsigned NOT NULL AUTO_INCREMENT,
`UserAgentId` int(10) unsigned NOT NULL AUTO_INCREMENT,
`UserAgent` text NOT NULL,
`Created` datetime NOT NULL,
PRIMARY KEY (`UserAgentId`)

View file

@ -0,0 +1,6 @@
CREATE TABLE `Museums` (
`MuseumId` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Name` varchar(255) NOT NULL,
`Domain` varchar(255) NOT NULL,
PRIMARY KEY (`MuseumId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

View file

@ -1,6 +1,6 @@
CREATE TABLE `PollVotes` (
`UserId` int(11) unsigned NOT NULL,
`PollItemId` int(11) unsigned NOT NULL,
`UserId` int(10) unsigned NOT NULL,
`PollItemId` int(10) unsigned NOT NULL,
`Created` datetime NOT NULL,
UNIQUE KEY `idxUnique` (`PollItemId`,`UserId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

View file

@ -1,5 +1,5 @@
CREATE TABLE `Polls` (
`PollId` int(11) unsigned NOT NULL AUTO_INCREMENT,
`PollId` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Created` datetime NOT NULL,
`Name` varchar(255) NOT NULL,
`UrlName` varchar(255) NOT NULL,

6
config/sql/se/Tags.sql Normal file
View file

@ -0,0 +1,6 @@
CREATE TABLE `Tags` (
`TagId` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Name` varchar(255) NOT NULL,
PRIMARY KEY (`TagId`),
UNIQUE KEY `idxUnique` (`Name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;