I stedet for en enkelt række for hver film skal du bruge en attributværdi-tabel. Tilføj derefter et ekstra felt til dette, der specificerer brugeren, hvilket ville være 0
for den oprindelige standard. Så tabellen ser sådan ud:
MovieID UserID Attribute Value
1 0 Title 12 Monkeys
1 0 Format DVD
1 1 Title Twelve Monkeys
Så ville en forespørgsel om at få titlen se ud som:
SELECT MovieID, IFNULL(my.Value, default.Value) AS title
FROM movies AS default
LEFT JOIN movies AS my ON default.MovieID = my.MovieID AND my.Attribute = 'Title' AND my.userID = @user
WHERE default.UserID = 0 AND default.Attribute = 'Title'
Nogle databasedesignere kan også lide at bruge et AttributeID
snarere end en streng som attributnavnet og en separat tabel, der tilknytter attributnavne til ID'er.