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.