Datenredundanz verringern
Eine frühere Mitarbeiterin bzw. ein früherer Mitarbeiter der Small Business Administration hat eine erste Version der Datenbank erstellt. Standortinformationen werden in der gesamten Datenbank für Kreditnehmende, Banken und Projekte verwendet. Jede der entsprechenden Tabellen für diese Entitäten nutzt die Spalten city, state und zip_code und erzeugt damit redundante Daten. deine Aufgabe ist es, diese Standortdaten zu normalisieren. Du kannst dein Wissen zur Normalisierung direkt anwenden, indem du eine Tabelle place erstellst, um die Standortdaten zu konsolidieren.
Diese Übung ist Teil des Kurses
Erstellen von PostgreSQL-Datenbanken
Anleitung zur Übung
- Erstelle die Tabelle
placemitzip_codeals fünf-zeichenPRIMARY KEY,cityals Texttyp mit bis zu 50 Zeichen undstateals zweizeichrige Spalte. - Entferne die Spalten
city,stateundzip_codeaus der Definition der Tabelleborrower, indem du den SQL-Code löschst, der die Spalten definiert. - Füge der Tabelle
borrowereine Spalte namensplace_id(ein Fremdschlüssel) hinzu, die auf die Spaltezip_codeder Tabelleplaceverweist.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
-- 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
___ ___(___) ___ ___(___)
);