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
Övningsinstruktioner
- Skapa tabellen
placemedzip_codesom en fem-teckensPRIMARY KEY,citysom en texttyp med upp till 50 tecken ochstatesom en tvåteckenskolumn. - Ta bort kolumnerna
city,stateochzip_codefrån definitionen av tabellenborrowergenom att radera den SQL-kod som definierar kolumnerna. - Lägg till en kolumn med namnet
place_id(en främmande nyckel) i tabellenborrowersom refererar till kolumnenzip_codei tabellenplace.
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
___ ___(___) ___ ___(___)
);