Estimado Ignacio Esviza:
Tengo más de 12 años de experiencia trabajando y diseñando BD, en este mismo foro, tengo casi 500 intervenciones, y soy colaborador no solo de este foro de consultas, si no de algunos otros. Igual y para usted no es razón suficiente como para avalar mi punto de vista, pero me gustaría enumerar alguna razones por las que considero que esto es un mal diseño de BD.
1. Espacio: En primer lugar el campo se tendría que declara como campo VARCHAR, de una longitud tan grande como el mayor número de valores repetidos que pudiera tener... esto puede ser un verdadero problema, pues es posible que no sea tan fácil determinar cuál es este valor máximo. Además, supongamos que la cardinalidad entre registros no sea uniforme, eso podría tener casos como estos:
campo
1
1,2
1,2,3,
1,2,3,4,5,6,7,8,8,9,10,11......., 99,100
si comparas los casos, en el primer caso sólo se está ocupando un caracter, sin embargo el campo se debió de declarar con una longitud muy grande, lo que implica un desperdicio innecesario.
2. Integridad referencial: los campos multivaluados no permiten integridad referencial, es decir, imagina que estos números son referencias hacia otra tabla, no puedes definir reglas de llaves foráneas, ni de llaves duplicadas... Alguna vez alguno de mis maestros me dijo que un conjunto de datos sin integridad, es en realidad un montón de basura... Palabras que también pueden sonar muy duras, pero que comparto sin lugar a dudas.
3. Registros únicos: Que es a final de cuentas el problema que se está presentando en estos casos... Creo que no tengo qué dar mayores explicaciones.
Hasta la fecha, no he encontrado una razón válida para manejar un campo multivaluado. igual y usted podría indicarme lo contrario... Después de todo siempre estoy dispuesto a aprender algo nuevo y estoy abierto a cualquier crítica o comentario.
Estás en un completo error mi estimado Ignacio Esviza, no creo que me conozcas lo suficiente como para calificarme como soberbio. Tu juicio de valor no tiene razón de sustento.
Estoy de acuerdo completamente con esto, pero después de todo ¿crees que tu comentario ayudó en algo al compañero Joaquín?
Si te tomas un poco de tiempo para revisar el foro te podrás dar cuenta que mi intención siempre es la de ayudar, en lo que puedo, a todos los foristas. Y no hago no por búsqueda de reconocimiento, no por soberbia, no por sentirme superior a los demás, o por demostrar que sé mucho... lo hago de manera desinteresada, y con la mejor disponibilidad de ayudar.
Saludos
Leo.