Skip to content

Commit 4ead6b2

Browse files
committed
Update composer constraints
- Composer records must now be unique based on their names
1 parent 28b4180 commit 4ead6b2

File tree

3 files changed

+11
-5
lines changed

3 files changed

+11
-5
lines changed

site/private_core/view/rips/rip.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,11 @@
7373
</tr>
7474
<tr>
7575
<th>Platform</th>
76-
<td><?= implode(', ', $rip['Platforms']) ?></td>
76+
<?php if (empty($rip['Platforms'])): ?>
77+
<td><i>Unknown platform</i></td>
78+
<?php else: ?>
79+
<td><?= implode(', ', $rip['Platforms']) ?></td>
80+
<?php endif; ?>
7781
</tr>
7882
<tr>
7983
<th>Composers/Artists</th>

sql/Procedures/usp_InsertComposer.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ CREATE PROCEDURE RipDB.usp_InsertComposer(
99
IN LastNameAlt varchar(256),
1010
OUT ComposerIDOut INT)
1111
BEGIN
12-
INSERT INTO Composers
12+
INSERT IGNORE INTO Composers
1313
(ComposerFirstName, ComposerLastName, ComposerFirstNameAlt, ComposerLastNameAlt)
1414
VALUES
1515
(FirstName, LastName, FirstNameAlt, LastNameAlt);

sql/Tables/Composers.sql

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
CREATE TABLE Composers (
22
ComposerID INT auto_increment NOT NULL,
3-
ComposerFirstName varchar(256) CHARACTER SET utf8mb4 NOT NULL,
4-
ComposerLastName varchar(256) CHARACTER SET utf8mb4,
3+
ComposerFirstName varchar(128) CHARACTER SET utf8mb4 NOT NULL,
4+
ComposerLastName varchar(128) CHARACTER SET utf8mb4,
55
ComposerFirstNameAlt varchar(256) CHARACTER SET utf8mb4,
66
ComposerLastNameAlt varchar(256) CHARACTER SET utf8mb4,
7-
CONSTRAINT PK_Composers PRIMARY KEY (ComposerID)
7+
UniqueNameCompute varchar(768) AS (CONCAT(ComposerFirstName, iFNULL(ComposerLastName, ''), IFNULL(ComposerFirstNameAlt, ''))),
8+
CONSTRAINT PK_Composers PRIMARY KEY (ComposerID),
9+
UNIQUE KEY UQ_ComposerFullName (UniqueNameCompute)
810
)
911
ENGINE=InnoDB
1012
DEFAULT CHARSET=utf8mb4

0 commit comments

Comments
 (0)