Kom igångKom igång gratis

Minska dataredundans

En tidigare anställd på Small Business Administration tog fram en första version av databasen. Platsinformation används genomgående i databasen för låntagare, banker och projekt. Var och en av de motsvarande tabellerna för dessa enheter använder kolumnerna city, state och zip_code, vilket skapar redundant data. Det är ditt ansvar att normalisera denna platsinformation. Du får nu möjlighet att omsätta dina kunskaper om datanormalisering i praktiken genom att skapa en place-tabell som samlar all platsinformation.

Den här övningen är en del av kursen

Skapa PostgreSQL-databaser

Visa kurs

Övningsinstruktioner

  • Skapa tabellen place med zip_code som en fem-teckens PRIMARY KEY, city som en texttyp med upp till 50 tecken och state som en tvåteckenskolumn.
  • Ta bort kolumnerna city, state och zip_code från definitionen av tabellen borrower genom att radera den SQL-kod som definierar kolumnerna.
  • Lägg till en kolumn med namnet place_id (en främmande nyckel) i tabellen borrower som refererar till kolumnen zip_code i tabellen place.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

-- 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
  ___ ___(___) ___ ___(___)
);
Redigera och kör kod