Differenza tra 3NF e BCNF nei database

Differenza tra 3NF e BCNF nei database

La differenza principale fra 3NF e BCNF è che la tabella deve essere in 2° forma normale e non dovrebbe esserci alcuna dipendenze transitive per soddisfare 3NF mentre gli attributi principali della tabella non dipendano dagli attributi non primaria della tabella a soddisfare BCNF.

La ridondanza dei dati si riferisce agli stessi dati che si ripetono in più posizioni. Può anche causare problemi durante l’inserimento, l’aggiornamento e l’eliminazione dei dati. La normalizzazione è il processo di organizzazione dei dati in più tabelle correlate al fine di ridurre al minimo la ridondanza dei dati. Fornisce una soluzione alla ridondanza dei dati poiché divide i dati in una tabella in più tabelle. Tuttavia, non è possibile eliminare completamente la ridondanza dei dati; è possibile solo ridurre la ridondanza dei dati. Esistono vari tipi di normalizzazione come 1NF, 2NF, 3NF, BCNF, ecc. Prima di discutere 3NF e BCNF, è necessario comprendere 1NF e 2NF.

1NF

Ci sono quattro regole per fare in modo che una tabella soddisfi 1NF. Sono i seguenti.

  • Ogni colonna della tabella dovrebbe avere valori automatici.
  • Una colonna dovrebbe contenere dati dello stesso tipo.
  • Ogni colonna dovrebbe avere un nome univoco.
  • L’ordine di memorizzazione dei dati non ha importanza.

2NF

Ci sono due regole per fare in modo che una tabella soddisfi 2NF. Sono i seguenti.

  • La tabella dovrebbe essere in formato 1NF.
  • Non dovrebbero esserci dipendenze parziali.

In una tabella che memorizza le informazioni degli studenti, l’ID studente è la chiave primaria e aiuta a identificare separatamente ogni riga della tabella. Altre colonne dipendono dalla chiave primaria. Questa dipendenza è chiamata dipendenza funzionale.

3NF

Ci sono due regole per fare in modo che una tabella soddisfi 2nf. Sono i seguenti.

  • La tabella dovrebbe soddisfare il 2° forma normale.
  • Non dovrebbe avere transitive.

BCNF

BCNF sta per Boyce-Codd-Normal Form. Evita gli attributi primi a seconda degli attributi non primi. 

Differenza tra 3NF e BCNF nei database

Differenza tra 3NF e BCNF

Definizione

3NF è una forma normale che viene utilizzata nella normalizzazione di un progetto di database per ridurre la duplicazione dei dati e garantire l’integrità referenziale assicurando che l’entità sia nella seconda forma normale e che tutti gli attributi in una tabella siano determinati solo dalle chiavi candidate di quella relazione e non da attributi non primi. BCNF, d’altra parte, è una forma normale utilizzata nella normalizzazione del database che è una versione leggermente più forte del 3NF. Quindi, questa è la principale differenza tra 3NF e BCNF. 

Funzionalità

La tabella dovrebbe essere nella 2° forma normale e non dovrebbero esserci dipendenze transitive per soddisfare 3NF mentre gli attributi primi della tabella non dovrebbero dipendere dagli attributi non primi della tabella per soddisfare BCNF. Quindi, la funzionalità è un’altra differenza tra 3NF e BCNF.

Conclusioni

In breve, un database normalizzato è considerato un buon database. Esistono diversi tipi di normalizzazione e due di essi sono 3NF e BCNF. La differenza principale tra 3NF e BCNF è che la tabella deve essere in 2° forma normale e non dovrebbe esserci alcuna dipendenze transitive per soddisfare 3NF mentre gli attributi principali della tabella non dipendano dagli attributi non primaria della tabella a soddisfare BCNF.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *