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

duda modelado base mysql basica

Estas en el tema de duda modelado base mysql basica en el foro de Mysql en Foros del Web. buenas tardes. Me pusieron un trabajo que consistía en lo siguiente: Existen estas 3 tablas en BD. Se requiere que se puedan almacenar N cantidad ...
  #1 (permalink)  
Antiguo 16/07/2016, 21:20
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 17 años, 11 meses
Puntos: 50
duda modelado base mysql basica

buenas tardes.

Me pusieron un trabajo que consistía en lo siguiente:

Existen estas 3 tablas en BD. Se requiere que se puedan almacenar N cantidad de números de teléfono para cada empresa... la pregunta es: cual es la forma más optima o correcta de modelar la bd para que permita esto???


Yo di 2 soluciones las cuales no coloco para no interferir en sus respuestas... la una fue creando una tabla relacional y la otra fue con unas tablas eav... Como se haría?


Tablas existentes!!!!

Empresa1
id
nombre
direccion
...

Empresa2
id
nombre
direccion
...

Empresa3
id
nombre
direccion
...
  #2 (permalink)  
Antiguo 16/07/2016, 22:29
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: duda modelado base mysql basica

Si creaste TRES tablas como esas, bueno, tu modelo está MAL desde el inicio. Se requiere sólo una tabla para las tres empresas y una segunda tabla para los teléfonos.
Son sólo DOS tablas.

NUNCA se crean tablas para almacenar instancias únicas de entidades.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 18/07/2016, 17:25
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 17 años, 11 meses
Puntos: 50
Respuesta: duda modelado base mysql basica

gnzsoloyo gracias por su respuesta ... y entiendo lo que me dice pero el problema fue planteado de esa manera porque las tablas vienen de bases de datos distintas.. suponiendo que eso es correcto como dejaria usted normalizada la información de los teléfonos? gracias!
  #4 (permalink)  
Antiguo 18/07/2016, 17:42
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: duda modelado base mysql basica

Tienes que integrar os datos de las empresas en una sola tabla...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 03/08/2016, 17:06
 
Fecha de Ingreso: septiembre-2008
Mensajes: 35
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: duda modelado base mysql basica

hola

Tienes que aprenderte las "3 Formas Normales" de Bases de Datos..

Son el ABC si quieres trabajar con Bases de Datos

https://cvva.wordpress.com/2007/12/0...rmas-normales/

Debes entender el concepto de MAESTRO - DETALLE

Imagina una tabla que registre cada factura de ventas...

No puedes incluir el nombre del cliente en cada registro de factura.. y no puedes incluir los datos completos de la factura en cada producto vendido..

Para eso se usan IDs... datos Indice de cada Maestro...

Tabla Maestra de Clientes... donde cada cliente tiene un ID identificatorio y unico.. generalmente un tipo de datos numerico y AUTOINCREMENT.

Tabla Maestra de Facturas donde estan todos los datos no repetidos de la Factura (ej. Nro de Factura, Fecha, Id del Cliente, Totales, etc).

Tabla Detalle de las Facturas, donde unida a la Tabla maestra mediante el ID de la tabla maestra, tienes nn registros donde solo grabas el ID de registro, ID de Producto, Cantidad, Precio unitario, etc, etc, etc.

Entiendes ?

Todo unido por campos INDICE y de caracteristicas iguales.

Saludos
__________________
Pablo Tilotta
Super MySQL
El mejor y mas rápido MySQL Manager para ANDROID
Super MySQL en Play Store

Etiquetas: bd, modelado, tabla
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 15:21.