1e normaalvorm

PostgreSQL-databases maken

Darryl Reeves

Industry Assistant Professor, New York University

Voorbeeld: studentgegevens bijhouden

CREATE TABLE student (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    courses VARCHAR(50) NOT NULL,
    home_room SMALLINT NOT NULL
);
  • Bijwerkfouten
  • Invoegfouten
  • Verwijderfouten
PostgreSQL-databases maken

Voorbeeld: dubbele data na bijwerken

id name courses home_room
122 Susan Roth Algebra I, Physics, Spanish II 101
413 Robert Cruz History, Geometry, Biology 204
613 Thomas Wright English III, Chemistry, Algebra II 102
PostgreSQL-databases maken

Voorbeeld: dubbele data na bijwerken

id name courses home_room
122 Susan Roth Algebra I, Chemistry, Spanish II 101
413 Robert Cruz History, Geometry, Biology 204
613 Thomas Wright English III, Chemistry, Algebra II 102
PostgreSQL-databases maken

Voorbeeld: dubbele data na bijwerken

id name courses home_room
122 Susan Roth Algebra I, Chemistry, Spanish II, Chemistry 101
413 Robert Cruz History, Geometry, Biology 204
613 Thomas Wright English III, Chemistry, Algebra II 102
PostgreSQL-databases maken

Voorbeeld: invoegen met kolombeperkingen

CREATE TABLE student (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    courses VARCHAR(50) NOT NULL,
    home_room SMALLINT NOT NULL
);
id name courses home_room
122 Susan Roth Algebra I, Physics, Spanish II 101
413 Robert Cruz History, Geometry, Biology 204
613 Thomas Wright English III, Chemistry, Algebra II 102
PostgreSQL-databases maken

Voorbeeld: invoegen met kolombeperkingen

CREATE TABLE student (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    courses VARCHAR(50) NOT NULL,
    home_room SMALLINT NOT NULL
);
id name courses home_room
122 Susan Roth Algebra I, Physics, Spanish II 101
413 Robert Cruz History, Geometry, Biology, French Literature 204
613 Thomas Wright English III, Chemistry, Algebra II 102
PostgreSQL-databases maken

Voorbeeld: gegevensintegriteit aangetast door verwijderen

id name courses home_room
122 Susan Roth Algebra I, Physics, Spanish II 101
413 Robert Cruz History, Geometry, Biology 204
613 Thomas Wright English III, Chemistry, Algebra II 102
PostgreSQL-databases maken

Voorbeeld: gegevensintegriteit aangetast door verwijderen

id name courses home_room
122 Susan Roth Algebra I, Physics, Spanish II 101
413 Robert Cruz History, Geometry, Biology 204
613 Thomas Wright ??? 102
PostgreSQL-databases maken

Voldoen aan de 1e normaalvorm (1NF)

  • 1NF-vereiste:
    • Tabelwaarden moeten atomaire zijn
PostgreSQL-databases maken

Voorbeeld: studententabel die voldoet aan 1NF

CREATE TABLE student (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    courses VARCHAR(50) NOT NULL,
    home_room SMALLINT NOT NULL
);
PostgreSQL-databases maken

Voorbeeld: studententabel die voldoet aan 1NF

CREATE TABLE student (
    id INTEGER,
    name VARCHAR(50) NOT NULL,
    courses VARCHAR(50) NOT NULL,
    home_room SMALLINT NOT NULL
);
PostgreSQL-databases maken

Voorbeeld: studententabel die voldoet aan 1NF

CREATE TABLE student (
    id INTEGER,
    name VARCHAR(50) NOT NULL,
    course VARCHAR(50) NOT NULL,
    home_room SMALLINT NOT NULL
);
PostgreSQL-databases maken

Voorbeeld: studententabel die voldoet aan 1NF

id name course home_room
122 Susan Roth Algebra I 101
122 Susan Roth Physics 101
122 Susan Roth Spanish II 101
413 Robert Cruz History 204
413 Robert Cruz Geometry 204
413 Robert Cruz Biology 204
PostgreSQL-databases maken

Voorbeeld: studententabel die voldoet aan 1NF

CREATE TABLE student (
    id INTEGER,
    name VARCHAR(50) NOT NULL,
    course VARCHAR(50) NOT NULL,
    home_room SMALLINT NOT NULL
);
PostgreSQL-databases maken

Voorbeeld: studententabel die voldoet aan 1NF

CREATE TABLE student (
    student_id INTEGER,
    first_name VARCHAR(50) NOT NULL,
    last_name VARCHAR(50) NOT NULL,
    course VARCHAR(50) NOT NULL,
    home_room SMALLINT NOT NULL
);
PostgreSQL-databases maken

Voorbeeld: studententabel die voldoet aan 1NF

id first_name last_name course home_room
122 Susan Roth Algebra I 101
122 Susan Roth Physics 101
122 Susan Roth Spanish II 101
413 Robert Cruz History 204
413 Robert Cruz Geometry 204
413 Robert Cruz Biology 204
PostgreSQL-databases maken

Laten we oefenen!

PostgreSQL-databases maken

Preparing Video For Download...