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

Dudas en diseño de bbdd

Estas en el tema de Dudas en diseño de bbdd en el foro de Bases de Datos General en Foros del Web. Hola, tengo que hacer un diseno de una bbdd y no se como hacerlo para normalizarlo. Os expongo en problema: tengo sucursales de una empresa. ...
  #1 (permalink)  
Antiguo 18/06/2012, 11:03
 
Fecha de Ingreso: junio-2012
Mensajes: 4
Antigüedad: 11 años, 10 meses
Puntos: 0
Dudas en diseño de bbdd

Hola, tengo que hacer un diseno de una bbdd y no se como hacerlo para normalizarlo. Os expongo en problema:

tengo sucursales de una empresa.

sucursal ( id_sucursal, trabajadores, proyectos, años, ...,....)

son en total 650 sucursales y esos datos son de diferentes años del 2008, 2009, 2010 y 2011. Cual podria ser la clave primaria? id_sucursal y el año?.
Seria mejor dividirlo en tablas por años?

y la otra pregunta es que el numero de campos de la sucursal son aproximadamente 800, es mejor dividirlo en varias tablas?.

Muchas gracias!
  #2 (permalink)  
Antiguo 18/06/2012, 11:56
Avatar de Omura
Colaborador
 
Fecha de Ingreso: julio-2006
Ubicación: Peru
Mensajes: 3.491
Antigüedad: 17 años, 9 meses
Puntos: 185
Respuesta: Dudas en diseño de bbdd

800 campos mas que seguro deban ser repartidos en varias tablas, ahora mencionas 650 sucursales, esto es a nivel país o hay sucursales en otros países.

por lógica tienes que tener un campo dirección, ahí deberías tener mínimo 2 tablas adicionales si no son mas, por ejemplo por aquí en caso tuviéramos que registrar las direcciones en la BD de sucursales repartidas por todo el país, tendríamos que manejar por separado varios datos...

av. Javier Prado 1234, San Isidro, Lima, Lima, Perú

para una dirección como esta, necesitarías las siguientes tablas...

tabla tblSucursal
idSucursal
...
dirección
idDistrito
idPronvicia
idDepartamento
....

tabla tlbDistrito
idDistrito
nombreDistrito

tabla tblProvincia
idProvincia
nombreProvincia

tabla tblDepartamento
idDepartamento
nombreDepartamento
__________________
Mi error era de código... pero de código genético.
  #3 (permalink)  
Antiguo 18/06/2012, 12:12
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: Dudas en diseño de bbdd

¿800 campos?
Más allá de que el sistema lo soporte, da toda la impresión de que a esa base le está faltando algo de normalización, o al menos hay que revisar su estructura, porque puede haber errores de diseño...
__________________
¿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 19/06/2012, 03:35
 
Fecha de Ingreso: junio-2012
Mensajes: 4
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Dudas en diseño de bbdd

son 800 campos porque toda la información corresponde a una sola entidad, es decir a una sola sucursal.

Pensando en dividir la información me saldría esto:


General information ( aqui hay como 100 valores unicos )

Labour detail ( aqui hay como 200 valores unicos )

Costs ( aqui hay como 100 valores unicos )

Production ( aqui hay como 300 valores unicos )



¿Debería crear estas tablas?. Pero serían siempre relacciones 1:1, ¿no?

Última edición por josito_777; 19/06/2012 a las 04:11
  #5 (permalink)  
Antiguo 19/06/2012, 04:16
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: Dudas en diseño de bbdd

Sin ver el tipo de datos que tiene esa tabla no te puedo aconsejar segmentarla o no.
Puede ser que si, puede ser que no. Depende de los datos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 19/06/2012, 14:38
 
Fecha de Ingreso: junio-2012
Mensajes: 4
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Dudas en diseño de bbdd

La mayoria de los datos son numericos de pocas cifras
  #7 (permalink)  
Antiguo 19/06/2012, 14:55
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: Dudas en diseño de bbdd

Cita:
Iniciado por josito_777 Ver Mensaje
La mayoria de los datos son numericos de pocas cifras
Eso no nos dice nada.
El tema es saber qué representan esos datos, cómo se relacionan con otra/s tablas, etc.
En definitiva: Esa tabla representa una entidad del sistema, pero sin saber cómo se relaciona esa entidad con el resto, no podemos saber, a priori si existe alguna forma de simplificarla.
Un caso sería, por ejemplo, si existe un subconjunto de datos en la tabla tal que sea conceptualmente tratable como unidad, y que a su vez fuese opcional. Es la situación en la cual ese subconjunto puede no tener dependencia funcional de la PK de la tabla, sino de alguno de los otros atributos. En ese caso, ese subconjunto no pertenece a la tabla. Es otra tabla, aunque la relación fuese 1:1.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 20/06/2012, 12:54
 
Fecha de Ingreso: junio-2012
Mensajes: 4
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Dudas en diseño de bbdd

Creo que he entendido bien lo que me has escrito. Entonces si que lo podría agrupar en subconjuntos, ya que algunos datos son opcionales. Entonces lo dividiré en varias tablas. Al ser una relación 1:1 propagaría la PK de tabla principal a la tabla secundaria o viceversa?.

Y otra apregunta:
Los datos son de diferentes años. por lo que los valores de los campos podrán no ser iguales en cada año. ¿Habría que crear otra entidad? o dejarlo asi:

tabla( id, campo1, campo2, ..., ...., año)

En el caso de ponerlo en la tabla principal, ¿es mejor poner la PK "id" mas "año" o poner el año como clave alternativa?.

Etiquetas: bbdd, bd, diseño, dudas, tabla, campos
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 05:21.