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

[SOLUCIONADO] duda forma normal Boyce Codd

Estas en el tema de duda forma normal Boyce Codd en el foro de Bases de Datos General en Foros del Web. CONTRATO ALQUILER CLI Prop IniContrato FinContrato Renta C005 P001 11/10/12 11/03/13 670 C005 P789 01/01/09 01/01/13 800 C540 P001 15/01/12 15/02/13 370 C540 P789 10/12/12 ...
  #1 (permalink)  
Antiguo 19/03/2013, 10:18
Avatar de Pike  
Fecha de Ingreso: agosto-2008
Ubicación: Por ahí
Mensajes: 251
Antigüedad: 15 años, 7 meses
Puntos: 1
duda forma normal Boyce Codd

CONTRATO ALQUILER

CLI Prop IniContrato FinContrato Renta
C005 P001 11/10/12 11/03/13 670
C005 P789 01/01/09 01/01/13 800
C540 P001 15/01/12 15/02/13 370
C540 P789 10/12/12 10/12/13 560
C540 P789 05/10/08 31/12/08 900

Hola a todos, una duda que no alcanzo a entender, se supone que esta tabla está dentro de la forma relacional FBNC, cualquiera de sus atributos puede ser una clave candidata, pero en el caso de esta tabla ¿no es un error que la clave primaria se repita ? está claro que un cliente puede tener mas de una propiedad alquilada ¿pero no rompe esto el principio de unicidad de la clave primaria?

Disculpas por mostrar la tabla así, me imagino que se entenderá bien.

Un saludo
  #2 (permalink)  
Antiguo 19/03/2013, 10:38
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 forma normal Boyce Codd

Primero: es imposible que una PK se repita. Eso es por definición, porque es única.
Lo que tienes allí no es una PK que se repite, sino una clave compuesta de tres o cuatro campos, que puede verse si obtienes las claves candidatas.
La PK se forma por (CLI, Prop, IniContrato) y está en FNBC, hasta lo que veo (cada dependencia funcional no trivial, tiene como determinante la CC).
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 19/03/2013 a las 10:44
  #3 (permalink)  
Antiguo 19/03/2013, 10:47
Avatar de Pike  
Fecha de Ingreso: agosto-2008
Ubicación: Por ahí
Mensajes: 251
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: duda forma normal Boyce Codd

He formulado mal la pregunta, la PK no se repite en ninguna fila pero si se repite como valor del atributo CLI, ¿esto está bien? ¿se puede modelar la BBDD así? a la hora de actualizar o introducirle datos con sql en la sentencia hay que indicarle WHERE CLI = "C540 " AND PROP = "P001" para que se actualice bien y no haya conflictos?

Un saludo y gracias por tu respuesta
  #4 (permalink)  
Antiguo 19/03/2013, 11:32
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 forma normal Boyce Codd

Creo que no entendiste lo que te puse completamente: Tu clave primaria es de tres campos, no de dos. Por tanto, para realizar un UPDATE necesitas trers parámetros en el WHERE. No alcanza con dos.
Más allá de eso, para un uso real, esa tabla está mal pensada, los contratos tienen identificadores asignados por sistemas jurídico-contables, y no al azar, por fecha.
Con eso quiero decir que tu base no está representando un sistema real.
__________________
¿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 19/03/2013, 11:52
Avatar de Pike  
Fecha de Ingreso: agosto-2008
Ubicación: Por ahí
Mensajes: 251
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: duda forma normal Boyce Codd

La tabla no es un ejemplo real ; volviendo a la pregunta inicial ¿ esta tabla representa bien un la relación formal FNBC?

Gracias por tus respuestas
  #6 (permalink)  
Antiguo 19/03/2013, 12:05
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 forma normal Boyce Codd

Pregunta ya respondida:
Cita:
La PK se forma por (CLI, Prop, IniContrato) y está en FNBC, hasta lo que veo (cada dependencia funcional no trivial, tiene como determinante la CC).
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: forma, relacion, 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 22:19.