Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

[SOLUCIONADO] ¿PK siempre numérico?

Estas en el tema de ¿PK siempre numérico? en el foro de Bases de Datos General en Foros del Web. Hola a todos, estoy reviviendo mi proyecto final de FP, es una web inmobiliaria, para darle un formato más acorde con estos tiempos y revisando ...
  #1 (permalink)  
Antiguo 20/03/2018, 02:36
 
Fecha de Ingreso: mayo-2011
Ubicación: Palma de Mallorca
Mensajes: 108
Antigüedad: 12 años, 10 meses
Puntos: 4
¿PK siempre numérico?

Hola a todos,

estoy reviviendo mi proyecto final de FP, es una web inmobiliaria, para darle un formato más acorde con estos tiempos y revisando la base de datos, tengo una tabla de comunidades autónomas donde hay una columna ID y una columna nombre.

Revisando esta tabla, y habiendo utilizado en muchas tablas un id numérico auto incrementado, en esta en particular la PK es un varchar de 2 caracteres, tal de esta forma:

Código SQL:
Ver original
  1. ID   Nombre
  2. AN  Andalucia
  3. AR  Aragón
  4. ...

Y me ha surgido la duda de si está bien planteada así, ya que esta tabla muy difícilmente sufra cambios.

Gracias por vuestra atención.
  #2 (permalink)  
Antiguo 20/03/2018, 09:33
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: ¿PK siempre numérico?

Si a ti te sirve ese tipo de llave primaria esta bien, siempre y cuando sea un dato que no se repita, puedes usar lo que necesites
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 21/03/2018, 10:52
Avatar de 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, 4 meses
Puntos: 2658
Respuesta: ¿PK siempre numérico?

Es una cuestión de diseño. No hay reglas específicas.
Usualmente ese detalle surge de analizar los datos con que se va a trabajar, es decir los origenes de datos del sistema. Si el sistema usa una codificación consistente hecha con datos propios de la entidad que se va a representar, es mejor usarlo.
Sólo es necesario crear PK numéricas si luego de normalizar las tablas (3FN) no se ha logrado determinar un identificador único, y no se desea crear claves compuestas demasiado elaboradas.

Por otro lado, se tiene en cuenta la performance: Si las PK son numéricas, los sistemas pueden responder más rápidamente en consultas basadas en ese tipo de claves, aunque las mismas no sean incrementales. Esto es funcionalmente útil en consultas con enormes cantidades de datos, pero no son buena idea cuando las busquedas son por patrones o cadenas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 25/03/2018, 08:31
 
Fecha de Ingreso: mayo-2011
Ubicación: Palma de Mallorca
Mensajes: 108
Antigüedad: 12 años, 10 meses
Puntos: 4
Respuesta: ¿PK siempre numérico?

Hola a los dos,

gracias por vuestras respuestas, la verdad que me han aclarado bastante las ideas que tenia en mente. Siempre es un placer contar con esta comunidad.

Un saludo.

Etiquetas: caracteres, numerico, tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:37.