Ho le mie tabelle come sotto
Role(Role ID, Name, Other_Columns)
Command(Command ID, Name, Other_Columns)
Ho una tabella delle associazioni RoleCommand. Va bene avere RoleCommand(RoleName, CommandName) anziché RoleCommand(Role ID, Command ID) . Mi sembra che sia più facile leggere o popolare la tabella di associazione in questo caso se i nomi sono usati come riferimento. Si noti che RoleCommand viene compilato manualmente con le query di inserimento. Non c'è interfaccia utente Web. Installerò vincoli di chiave univoci e riferimenti a chiave esterna su Name colonne. Qualcuno usa questo tipo di referenze in produzione? La maggior parte delle volte vedo solo gli ID utilizzati per le tabelle di associazione.
UPDATE:
Sto prendendo in considerazione l'utilizzo di name per i riferimenti a chiavi esterne perché le query di inserimento per RoleCommand sono così brutte con% nidificato% query di co_de all'interno di SELECT per ottenere i valori ID dai nomi. Non voglio usare solo ID nelle query di inserimento, per evitare errori.