Me enseñaron a no usar el nombre Id
para la columna de identidad de mis tablas, pero últimamente lo he estado usando de todos modos porque es simple, breve y muy descriptivo sobre lo que realmente son los datos.
He visto a personas sugerir prefijos Id
con el nombre de la tabla, pero esto parece hacer más trabajo para la persona que escribe las consultas SQL (o el programador si está utilizando un ORM como Entity Framework), particularmente en nombres de tabla más largos como CustomerProductId
oAgencyGroupAssignementId
Un proveedor externo que contratamos para crear algo para nosotros en realidad nombró todas sus columnas de identidad Ident
solo para evitar su uso Id
. Al principio pensé que lo hicieron porque Id
era una palabra clave, pero cuando lo examiné, descubrí que Id
no es una palabra clave en SQL Server 2005, que es lo que estamos usando.
Entonces, ¿por qué la gente recomienda no usar el nombre Id
para una columna de identidad?
Editar: para aclarar, no estoy preguntando qué convención de nomenclatura usar, o argumentos para usar una convención de nomenclatura sobre la otra. Solo quiero saber por qué se recomienda no usar Id
el nombre de la columna de identidad.
Soy un programador único, no un dba, y para mí la base de datos es solo un lugar para almacenar mis datos. Como generalmente construyo aplicaciones pequeñas y normalmente uso un ORM para el acceso a datos, es mucho más fácil trabajar con un nombre de campo común para el campo de identidad. Quiero saber qué me estoy perdiendo al hacer esto, y si hay alguna buena razón para no hacerlo.