Database Viewer

Browse the SQL that builds any database used across the lessons, without running it.

Loaded: Lesson 9 database ยท relationships.database-init

CREATE TABLE teams (
  id SERIAL PRIMARY KEY,
  name TEXT NOT NULL
);

CREATE TABLE projects (
  id SERIAL PRIMARY KEY,
  team_id INTEGER NOT NULL REFERENCES teams (id),
  name TEXT NOT NULL
);

CREATE TABLE users (
  id SERIAL PRIMARY KEY,
  name TEXT NOT NULL
);

CREATE TABLE project_members (
  project_id INTEGER NOT NULL REFERENCES projects (id),
  user_id INTEGER NOT NULL REFERENCES users (id),
  PRIMARY KEY (project_id, user_id)
);

CREATE INDEX projects_team_id_idx ON projects (team_id);
CREATE INDEX project_members_user_id_idx ON project_members (user_id);


INSERT INTO teams (name) VALUES ('Core'), ('Data');
INSERT INTO projects (team_id, name) VALUES (1, 'PgQuest'), (1, 'Website'), (2, 'Warehouse');
INSERT INTO users (name) VALUES ('Ada'), ('Grace'), ('Linus');
INSERT INTO project_members (project_id, user_id) VALUES (1, 1), (1, 2), (3, 2), (3, 3);