Ver Mensaje Individual
  #3 (permalink)  
Antiguo 17/01/2011, 05:07
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: duda con tabla categoria

Cita:
a la hora de hacer la consulta para un humano es mas fácil un nombre no,
pero para un ordenar es mas fácil un numero
A la hora de diseñar una tabla lo que se define no es si es humanamente entendible, sino si los atributos que se le ponen pertenecen o no a la entidad que la tabla representea.
Respecto a si es más rápido, o práctico usar campos numéricos o de cadena, eso no depende sino de las reglas de negocio, lo que significa: Lo determina el propietrio del sistema.
No existe una regla práctica en ningún sentido. Algunas organizaciones prefieren códigos numéricos, otros usan caracteres, los que son de todos modos códigos de identificación, o bien sistemas mixtos.
En una tabla de pocos registros como la que planteas, la performance con uno u otro caso es mas o menos la misma. Sólo tendría algún impacto en una tabla que representa una relación N:N si y sólo si la cantidad de registros es muy elevada (y estoy hablando de millones, no de miles), pero sólo hasta cierto punto.
Los ID numéricos, incrementales o no, son más rápidos que los alfanuméricos, pero sólo en cuestión de performance cuando tratas de JOINs contra tablas realmente grandes y únicamente. Para el usuario común, y sobre todo en web, la diferencia es indetectable.
En realidad, resumiendo, no hay una forma mejor. Hay sólo formas útiles y necesarias en determinados contextos.

Cita:
a la hora de introducir un numero es mas fácil que no un texto de no cometer errores
Es sí que es un error: No puedes combatir a la Ley de Murphy aplicada a la informática:

- Es imposible diseñar una pantalla de ingreso de datos a prueba de tontos. Los tontos son demasiado hábiles.

- Si usted logra diseñar una pantalla de ingreso de datos donde sea imposible ingresar un dato erróneo, siempre habrá un idiota ingenioso que logr hacerlos pasar.


Doy fe que es cierto.

En realidad el usuario (la interfase silla-teclado que menciona un amigo mío), siempre puede cometer errores, y es la parte más problemática de un sistema.
Dicho de otro modo: Los errores posibles de un programa son finitos, a diferencia de los humanos, que por definición son infinitos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 17/01/2011 a las 05:12