IniziaInizia gratis

Ridurre la ridondanza dei dati

Un ex dipendente della Small Business Administration ha sviluppato una versione iniziale del database. Le informazioni sulla posizione sono utilizzate in tutto il database per richiedenti, banche e progetti. Ciascuna delle tabelle corrispondenti a queste entità utilizza le colonne city, state e zip_code, creando dati ridondanti. Sta a te normalizzare questi dati di localizzazione. Avrai l'opportunità di mettere in pratica le tue conoscenze di normalizzazione creando una tabella place per accorpare i dati di localizzazione.

Questo esercizio fa parte del corso

Creare database PostgreSQL

Visualizza il corso

Istruzioni dell'esercizio

  • Crea la tabella place con zip_code come PRIMARY KEY di cinque caratteri, city come tipo testuale con fino a 50 caratteri e state come colonna di due caratteri.
  • Rimuovi le colonne city, state e zip_code dalla definizione della tabella borrower eliminando il codice SQL che definisce le colonne.
  • Aggiungi una colonna chiamata place_id (chiave esterna) alla tabella borrower che fa riferimento alla colonna zip_code della tabella place.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

-- Create the place table
___ ___ ___ (
  -- Define zip_code column
  ___ ___(___) ___ KEY,
  -- Define city column
  ___ ___(___) NOT NULL,
  -- Define state column
  ___ ___(___) NOT NULL
);

CREATE TABLE borrower (
  id SERIAL PRIMARY KEY,
  name VARCHAR(50) NOT NULL,
  approved BOOLEAN DEFAULT NULL,
  
  -- Remove zip_code column (defined below)
  zip_code CHAR(5) NOT NULL,
  
  -- Remove city column (defined below)
  city VARCHAR(50) NOT NULL,
  
  -- Remove state column (defined below)
  state CHAR(2) NOT NULL,
  
  -- Add column referencing place table
  ___ ___(___) ___ ___(___)
);
Modifica ed esegui il codice