Att lägga till en tredje ID-kolumn bara för att lägga till en ID-kolumn är meningslöst. Faktum är att det helt enkelt lägger till bearbetningskostnader (indexunderhåll) när du infogar eller tar bort rader.
En primärnyckel är inte nödvändigtvis "en ID-kolumn".
Om du bara tillåter en enskild associering mellan användare och objekt (en användare kan inte tilldelas samma objekt två gånger) är det rimligt att definiera (userid, itemid)
som den primära nyckeln för din tabell.
Om du tillåter att samma par visas mer än en gång behöver du naturligtvis inte den begränsningen.