LoslegenKostenlos loslegen

Objekt-zu-Daten-Abbildung verbessern

Die client-Tabelle des Small Business Development Center wurde zuvor ohne Angabe einer Kontaktperson für den Client definiert. Der erste Impuls des Datenbankteams war, einfach die Spalten contact_name und contact_email zur client-Tabelle hinzuzufügen. Du widersprichst diesem Plan jedoch aufgrund deiner Erfahrung mit guter Datenorganisation. In Zukunft könnte ein Kontakt in mehreren Tabellen referenziert werden. In dieser Übung definierst du Tabellenstrukturen für die Client- und Kontaktinformationen, die die Objekte client und contact besser trennen.

Erinnere dich an die frühere Definition der client-Tabelle:

CREATE TABLE client (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50),
    site_url VARCHAR(50),
    num_employees SMALLINT,
    num_customers INTEGER
);

Diese Übung ist Teil des Kurses

Erstellen von PostgreSQL-Datenbanken

Kurs anzeigen

Anleitung zur Übung

  • Erstelle eine contact-Tabelle mit den Spalten id (Primärschlüssel), name (maximale Länge 50) und email (maximale Länge 50).
  • Ändere die client-Tabelle, indem du eine contact_id-Spalte als Fremdschlüssel hinzufügst.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

-- Create the contact table
___ ___ ___ (
  	-- Define the id primary key column
	___ SERIAL ___ ___,
  	-- Define the name column
  	___ ___(50) NOT NULL,
    -- Define the email column
  	___ VARCHAR(___) NOT NULL
);

-- Add contact_id to the client table
ALTER TABLE ___ ADD ___ INTEGER NOT NULL;

-- Add a FOREIGN KEY constraint to the client table
ALTER TABLE ___ ADD CONSTRAINT fk_c_id FOREIGN KEY (___) REFERENCES ___(id);
Code bearbeiten und ausführen