Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/05/2013, 10:15
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: Plantear Base de datos para multiples idiomas

Hola Pentaxeros:

En realidad no hay una respuesta "correcta" o una "mejor" solución a tu problema... el detalle está en tu lógica de negocio pero hagamos algunos planteamientos.

¿Absolutamente todos los productos van a tener una traducción a todos los idiomas? Si tu respuesta es si... bueno, entonces si podrías pensar en que la opción 2 es la correcta, sin embargo esto difícilmente suele suceder. Además en tu post hablas de que de entrada estarías hablando de 10 idiomas, pero que en un futuro podrías incrementar a 20 o 25... ¿quién te indica que no serían después 30, o 40 idiomas? es decir, estás hablando de que no tienes idea de en realidad cuantos idiomas vas a tener...

De entrada podrías decir, ok, coloco 25 campos por los posibles 25 idiomas que posiblemente voy a tener, pero ¿Qué vas a colocar mientras haces las traducciones? ¿Valores en NULL?, ¿o la misma descripción que en español? cualquiera de las dos respuestas iría en contra de la teoría de modelos E-R, pues NO DEBE HABER CAMPOS NULOS en una tabla NI CAMPOS DUPLICADOS.

En lo particular creo que la mejor opción es la de manejar n tablas, una para cada idioma que quieres implementar... la relación entre las tablas sería 1 a 1, pero no habría desperdicio... podrías pensar que el manejar 100 mil registros o 1 millón de registros sería demasiado, pero en realidad no lo es tanto si tienes también un buen manejo de índices y llaves foráneas.

Insisto, cualquiera de las dos opciones que planteas puede ser la correcta, todo depende en realidad de tu lógica de negocio.

Saludos
Leo.