Mi è stato insegnato a non usare il nome Id
per la colonna identità delle mie tabelle, ma ultimamente lo sto usando comunque perché è semplice, breve e molto descrittivo su cosa siano effettivamente i dati.
Ho visto persone suggerire il prefisso Id
con il nome della tabella, ma questo sembra solo rendere più lavoro per la persona che scrive le query SQL (o il programmatore se stai usando un ORM come Entity Framework), in particolare su nomi di tabelle più lunghi come CustomerProductId
oAgencyGroupAssignementId
Un fornitore di terze parti che abbiamo assunto per creare qualcosa per noi in realtà ha chiamato tutte le loro colonne di identità Ident
solo per evitare di utilizzarlo Id
. All'inizio ho pensato che lo facessero perché Id
era una parola chiave, ma quando l'ho esaminato, ho scoperto che Id
non è una parola chiave in SQL Server 2005, che è quello che stiamo usando.
Quindi perché le persone raccomandano di non usare il nome Id
per una colonna di identità?
Modifica: per chiarire, non sto chiedendo quale convenzione di denominazione utilizzare, o perché gli argomenti utilizzino una convenzione di denominazione sull'altra. Voglio solo sapere perché si consiglia di non utilizzare Id
per il nome della colonna identità.
Sono un singolo programmatore, non un dba, e per me il database è solo un posto dove archiviare i miei dati. Poiché di solito creo piccole app e in genere utilizzo un ORM per l'accesso ai dati, è molto più facile lavorare con un nome di campo comune per il campo di identità. Voglio sapere cosa mi sto perdendo facendo questo, e se ci sono davvero dei buoni motivi per non farlo.