Casa Banche dati Qual è la seconda forma normale (2nf)? - definizione da techopedia

Qual è la seconda forma normale (2nf)? - definizione da techopedia

Sommario:

Anonim

Definizione - Che cosa significa Second Normal Form (2NF)?

La seconda forma normale (2NF) è la seconda fase della normalizzazione di un database. 2NF si basa sulla prima forma normale (1NF).

La normalizzazione è il processo di organizzazione dei dati in un database in modo che soddisfi due requisiti di base:

  • Non esiste ridondanza dei dati (tutti i dati sono memorizzati in un solo posto).
  • Le dipendenze dei dati sono logiche (tutti gli elementi di dati correlati sono memorizzati insieme).

Una tabella 1NF è in forma 2NF se e solo se tutti i suoi attributi non primi sono funzionalmente dipendenti dall'insieme di ogni chiave candidata.

Techopedia spiega Second Normal Form (2NF)

Dopo aver soddisfatto i requisiti di 1NF, 2NF richiede al progettista del database di effettuare le seguenti operazioni:

  1. Suddividere tutti i dati risultanti in relazioni molti-a-molti e archiviare i dati come tabelle separate. Ad esempio, in un database utilizzato dall'applicazione di una scuola, due delle tabelle sono STUDENT e SUBJECT. Nella vita reale, uno studente prende più materie contemporaneamente mentre una materia viene studiata da più studenti. Queste sono relazioni molte-a-molte. 2NF afferma che questa relazione deve essere suddivisa in più delle due tabelle precedenti (STUDENTE e SOGGETTO). Un modo per dividerli è l'introduzione di una terza tabella, che contiene le colonne Student_ID, Subject_ID, Semestre e Anno. In questo modo, non esiste una relazione diretta tra STUDENT e SUBJECT perché tutte le relazioni vengono create indirettamente attraverso la terza tabella.
  2. Crea relazioni tra tabelle usando chiavi esterne. Ad esempio, il database di una banca contiene due tabelle: CUSTOMER_MASTER (per l'archiviazione dei dettagli del cliente) e ACCOUNT_MASTER (per l'archiviazione dei dettagli sui conti bancari, incluso quale cliente detiene quale account). Ci deve essere un modo per collegare le due tabelle per sapere chi è il cliente per ciascun account. Il modo per farlo è tramite una chiave esterna, che è una colonna nella tabella ACCOUNT_MASTER che punta a una colonna corrispondente nella tabella CUSTOMER_MASTER.

Una tabella per la quale non vi sono dipendenze funzionali parziali dalla chiave primaria potrebbe o meno essere in 2NF. Oltre alla chiave primaria, la tabella può contenere altre chiavi candidate; è necessario stabilire che nessun attributo non primo ha dipendenze in chiave parziale da nessuna di queste chiavi candidate.

Qual è la seconda forma normale (2nf)? - definizione da techopedia