Pregunta

Un amigo me dijo:

  

¿Qué clave única usas? Te espero   no están guardando el nombre de usuario completo   --- ¡Esto consumirá demasiado espacio en la mesa! Asigne un ID de usuario único a cada   (único) userNAME y guarde este userID   (debe estar INTEGRADO SIN FIRMAR   auto_increment o BIGINT UNSIGNED   autoincremento). No te olvides de   crear una referencia

     

LLAVE EXTRANJERA ( userID ) REFERENCIAS    usertable ( userID ) en todas las tablas   utilizando el ID de usuario.

¿Es correcta la afirmación anterior? ¿Por qué o por qué no?

¿Fue útil?

Solución

Creo que tiene razón (por la razón equivocada) porque la clave primaria no puede cambiar, pero username puede cambiar. Por lo tanto, debe usar userid porque no cambiaría.

Otros consejos

Tiene razón por las razones equivocadas. El espacio de la tabla es secundario al hecho de que su aplicación podría exigir más adelante que los nombres de usuario se puedan cambiar o incluso dejar de ser únicos (podría imaginar una aplicación donde no se requieren nombres de usuario únicos, como Stack Overflow) y, por lo tanto, su aplicación necesitaría una refactorización importante y migración de datos en lugar de un ligero cambio en el otro caso (PK entero).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top