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

Encrucijada sobre normalización de base de datos

Estas en el tema de Encrucijada sobre normalización de base de datos en el foro de Programación General en Foros del Web. Hola, tanto tiempo!. Tengo una duda que me tiene atrapado. Estoy planteando una tabla con personas, cuentas, movimientos por cuenta, productos, servicios y stock. El ...
  #1 (permalink)  
Antiguo 26/08/2013, 12:00
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
Encrucijada sobre normalización de base de datos

Hola, tanto tiempo!. Tengo una duda que me tiene atrapado.

Estoy planteando una tabla con personas, cuentas, movimientos por cuenta, productos, servicios y stock.

El tema es el siguiente...
Existe una tabla Cuentas.. que tiene todas las cuentas de cada persona. Estas cuentas tienen tipos (Cuenta Cliente, Cuenta Proveedor, Cuenta Banco, etc).
El problema es que estas cuentas tienen atributos distintos, pero al estar en la misma tabla hay registros que tienen algunos campos completos, y otros no... (logico)

Al programar, debo realizar todas mis consultas poniendo Where id_tipo = "CLI" en el caso de que quiera cuentas de cliente!...

Trabajar con sqlalchemy (ORM) se complica tambien por el mismo motivo...
La solucion mas orientada a objetos seria tener tablas separadas por cada tipo de cuenta, y que cada una tenga los atributos justos y necesarios que requiere cada cuenta!...

De esta manera podria tener en sqlalchemy por ejemplo, una clase CuentaCliente, otra CuentaProveedor, y las consultas serian mas "directas".

Que opinan sobre esto? Ya que de dividir todo en tablas separadas, tendria que tener una tabla de movimientos de cuenta por cada tipo de cuenta (en lugar de la tabla unificada que tengo ahora), etc.


Saludos!
  #2 (permalink)  
Antiguo 27/08/2013, 14:01
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, 5 meses
Puntos: 2658
Respuesta: Encrucijada sobre normalización de base de datos

Para eso, precisamente, se crearon las bases de datos, y existe la Normalización de Bases de Datos...
Te recomiendo empezar a estudiar el tema y pasar por el Foro de Bases de Datos a preguntar por tus dudas específicas.
__________________
¿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 28/08/2013, 14:51
 
Fecha de Ingreso: noviembre-2002
Ubicación: DF
Mensajes: 1.056
Antigüedad: 21 años, 5 meses
Puntos: 37
Respuesta: Encrucijada sobre normalización de base de datos

" Ya que de dividir todo en tablas separadas, tendria que tener una tabla de movimientos de cuenta por cada tipo de cuenta".. pues si se refiere a la misma entidad "cuenta" debe estar en la misma tabla.. precisamente por normalización.. ya que tengan un atributo u otro, o que dicho atributo sea requerido u opcional pues se coloca también como campo o incluso como otra tabla dependiente.

Etiquetas: sql
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 00:12.