Normalizzazione 3NF e BCNF

2

Se ho la seguente relazione R = (A, B, C, D)

E le dipendenze funzionali:

  • A - > B, B - > A, CDB - > A, CDA - > B

Le chiavi candidate sono CDA e CDB .

La terza forma normale dice che non può esserci una dipendenza funzionale tra attributi non primi. Un attributo non-prime è un attributo che non si verifica in una delle chiavi candidate. Quindi ciò significa che questa relazione è già 3NF poiché entrambi A e B, che dipendono l'uno dall'altro, fanno parte di una delle chiavi candidate, ho ragione?

Se è così, ho un'altra domanda su BCNF. BCNF dice che ogni determinante deve essere una chiave candidata. In questo caso, A e B non sono chiavi candidate, in modo da violare BCNF o mi manca qualcosa qui?

Grazie.

    
posta user1062704 30.10.2014 - 14:51
fonte

1 risposta

1

Hai una relazione 1-1 tra A e B. Quindi puoi renderla appart in un'altra tabella.

Hai quindi 2 relazioni R1 = (A, B) e R2 = (A, C, D) o R2 = (B, C, D).

Scegli tra A e B per rendere l'attributo di R2. Questa scelta dipenderà dalle dimensioni degli attributi e dalla complessità del recupero. Ad esempio, l'indicizzazione degli interi è migliore delle stringhe.

    
risposta data 30.10.2014 - 15:37
fonte

Leggi altre domande sui tag