SQL - ayuda diseño DB

 
Vista:
sin imagen de perfil
Val: 16
Ha disminuido 1 puesto en SQL (en relación al último mes)
Gráfica de SQL

ayuda diseño DB

Publicado por SIN (6 intervenciones) el 29/01/2020 15:42:20
Hola a todos, nunca en la vida pensé que terminaría trabajando con base de datos (salvo consultar) y pues me tocó y estoy algo perdido.

Estoy diseñando una mini base de datos -tan solo 5 tablas- y estas se encontraban normalizadas (clave primaria única, datos sin repetir,elementos no compuestos, no hay dependencias transitivas, etc etc).

El problema es que me informaron que necesitábamos otras tablas que recibieran datos mensuales.... y de esta manera, bajo la lógica anterior, se repetiría la que pensaba sería la clave primaria...es decir, sucedería algo así:

ID DATO1 DATO2 DATO3
1------A--------B---------C <-- MES 1
1------J---------K---------L <-- MES 2
2------D--------F---------G <-- MES 1
2------Z--------Y----------X <-- MES 2
...
...

No se como replantear el modelo ahora, y pido su ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 2.761
Oro
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

ayuda diseño DB

Publicado por Isaias (1458 intervenciones) el 29/01/2020 16:46:49
Hola

A mi no me queda claro cual es su problema
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 16
Ha disminuido 1 puesto en SQL (en relación al último mes)
Gráfica de SQL

ayuda diseño DB

Publicado por SIN (6 intervenciones) el 29/01/2020 17:06:04
tengo mis tablas con una clave primaria unica y no nula. Ahora, al agregar registros por meses, se duplicará la clave primaria por cada mes, es decir, variaran todos los registros según el mes pero la clave primaria se duplicará. La clave corresponde a una id de cliente fijo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 2.761
Oro
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

ayuda diseño DB

Publicado por Isaias (1458 intervenciones) el 29/01/2020 19:19:23
La llave PK, hace UNICO a su registro, ¿ya identifico que hace unico a su registro?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 16
Ha disminuido 1 puesto en SQL (en relación al último mes)
Gráfica de SQL

ayuda diseño DB

Publicado por SIN (6 intervenciones) el 29/01/2020 19:24:38
Para 1 mes el único registro que no se repetía era el ID. Ahora se repite 1 vez por cada mes.
Me convenia que fuera el ID la PK porque varias tablas tienen el ID como PK.
¿Que hago ahora para relacionar estas tablas de buena manera?, ahora que tengo relaciones 1<-> *
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 2.761
Oro
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

ayuda diseño DB

Publicado por Isaias (1458 intervenciones) el 29/01/2020 23:29:12
Por eso mi comentario, si el ID (antes) era la PK y ahora entra en juego un nuevo campo como FECHA, entonces debe considerar que para cada ID solo deberia haber uno por MM-DD-YYYY, en un mismo mes, dia, año, no deberia haber mas de 1 id repetido, de lo contrario tendria que reconsiderar su PK
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 16
Ha disminuido 1 puesto en SQL (en relación al último mes)
Gráfica de SQL

ayuda diseño DB

Publicado por SIN (6 intervenciones) el 30/01/2020 12:14:27
¿¿no habría problema si dejo mi antigua pk como fk repetida en la tabla (1 por mes) y crear un nuevo campo incremental no nulo como nueva ID de la tabla, como PK??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 2.761
Oro
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

ayuda diseño DB

Publicado por Isaias (1458 intervenciones) el 30/01/2020 16:49:43
Creo que debes analizar bien si tu PK debe cambiar con la inclusion de un nuevo dato o bien, hacer un INDICE UNIQUE con la combinacion de tu PK y el nuevo campo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar