From 3f3cf702b2bb9d3b2f5989b6dd3f429138d306ef Mon Sep 17 00:00:00 2001 From: Mike Colagrosso Date: Sun, 13 Oct 2024 21:06:08 -0600 Subject: [PATCH] Remove primary key ContributorId `Ebook` to `Contributor` is one to many, and we don't query by ContributorId. The table already has a SortOrder column, and we use that to order the queries. --- config/sql/se/Contributors.sql | 2 -- lib/Contributor.php | 3 --- lib/Ebook.php | 8 ++++---- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/config/sql/se/Contributors.sql b/config/sql/se/Contributors.sql index 532974b8..76e7e4bb 100644 --- a/config/sql/se/Contributors.sql +++ b/config/sql/se/Contributors.sql @@ -1,5 +1,4 @@ CREATE TABLE `Contributors` ( - `ContributorId` int(10) unsigned NOT NULL AUTO_INCREMENT, `EbookId` int(10) unsigned NOT NULL, `Name` varchar(255) NOT NULL, `UrlName` varchar(255) NOT NULL, @@ -9,7 +8,6 @@ CREATE TABLE `Contributors` ( `FullName` varchar(255) NULL, `NacoafUrl` varchar(255) NULL, `SortOrder` tinyint(3) unsigned NOT NULL, - PRIMARY KEY (`ContributorId`), KEY `index1` (`EbookId`), KEY `index2` (`UrlName`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; diff --git a/lib/Contributor.php b/lib/Contributor.php index 244f73d7..13d3f628 100644 --- a/lib/Contributor.php +++ b/lib/Contributor.php @@ -5,7 +5,6 @@ use Safe\DateTimeImmutable; use function Safe\preg_match; class Contributor{ - public ?int $ContributorId = null; public ?int $EbookId = null; public string $Name; public string $UrlName; @@ -136,7 +135,5 @@ class Contributor{ ?) ', [$this->EbookId, $this->Name, $this->UrlName, $this->SortName, $this->WikipediaUrl, $this->MarcRole, $this->FullName, $this->NacoafUrl, $this->SortOrder]); - - $this->ContributorId = Db::GetLastInsertedId(); } } diff --git a/lib/Ebook.php b/lib/Ebook.php index f66775e9..78e10066 100644 --- a/lib/Ebook.php +++ b/lib/Ebook.php @@ -210,7 +210,7 @@ class Ebook{ from Contributors where EbookId = ? and MarcRole = ? - order by ContributorId + order by SortOrder asc ', [$this->EbookId, 'aut'], Contributor::class); } @@ -227,7 +227,7 @@ class Ebook{ from Contributors where EbookId = ? and MarcRole = ? - order by ContributorId + order by SortOrder asc ', [$this->EbookId, 'ill'], Contributor::class); } @@ -244,7 +244,7 @@ class Ebook{ from Contributors where EbookId = ? and MarcRole = ? - order by ContributorId + order by SortOrder asc ', [$this->EbookId, 'trl'], Contributor::class); } @@ -261,7 +261,7 @@ class Ebook{ from Contributors where EbookId = ? and MarcRole = ? - order by ContributorId + order by SortOrder asc ', [$this->EbookId, 'ctb'], Contributor::class); }