CREATE TABLE meeting(
id serial PRIMARY KEY,
name VARCHAR (50) UNIQUE NOT NULL,
start_time timestamp without time zone,
duration INTEGER NOT NULL
);
CREATE TABLE meeting_room(
id serial PRIMARY KEY,
name VARCHAR (50) UNIQUE NOT NULL
);
CREATE TABLE person(
id serial PRIMARY KEY,
name VARCHAR (50) UNIQUE NOT NULL
);
ALTER TABLE meeting
ADD COLUMN owner integer,
ADD FOREIGN KEY ("owner") REFERENCES "public"."person"("id");
INSERT INTO "public"."meeting"("id", "name", "start_time", "duration", "owner") VALUES(2, 'other meeting', 'now()', 15, 1) RETURNING "id", "name", "start_time", "duration", "owner";
INSERT INTO "public"."meeting"("id", "name", "start_time", "duration", "owner") VALUES(3, '3rd meeting', 'now()', 60, 1) RETURNING "id", "name", "start_time", "duration", "owner";
CREATE TABLE meeting_participants(
meeting_id integer NOT NULL,
person_id integer NOT NULL,
PRIMARY KEY (meeting_id, person_id),
CONSTRAINT meeting_id_fkey FOREIGN KEY (meeting_id)
REFERENCES meeting (id)
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT person_id_fkey FOREIGN KEY (person_id)
REFERENCES person (id)
ON UPDATE NO ACTION ON DELETE NO ACTION
);
INSERT INTO "public"."meeting_participants"("meeting_id", "person_id") VALUES(3, 2) RETURNING "meeting_id", "person_id";