Ver Mensaje Individual
  #2 (permalink)  
Antiguo 26/11/2011, 17:31
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Primary key, id o string?

Desde el punto de vista estricto de lo mejor, lo preferible es atenerse a lo ortodoxo: La mejor PK es la que surge de analizar el relevamiento de entidades del sistema, y de las reglas del negocio. O sea, lo que dice el modelo relaiconal: Ese atributo propio de la entidad, o conjunto de atributos, que identifica una instancia del mismo en la relación (tabla).
Agregar un atributo (cadena o numerico) es una alternativa que se decide en la normalización de las tablas, y sólo si es necesario.
Los autoincrementales son soluciones fáciles, propias de los programadores, pero luego generan problemas de migraciones, de integración, de actualización, etc. Desde el punto de vista de la implementación, son sencillos, pero con su sencillez, luego pagas con más trabajo cuando el sistema debe extenderse por su propio crecimiento.
A mi, personalmente, los AI no me convencen, y me han traido más problemas que soluciones.
Por experiencia, prefiero una PK que respete el modelo de entidades, que "fabricar" claves.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)