CREATE TABLE directions ( id integer NOT NULL PRIMARY KEY, short_name varchar(2) NOT NULL UNIQUE, name varchar(10) NOT NULL UNIQUE ); CREATE TABLE areas ( id integer NOT NULL PRIMARY KEY, name varchar(50) NOT NULL ); CREATE TABLE rooms ( id integer NOT NULL PRIMARY KEY, area integer NOT NULL REFERENCES areas(id), name varchar(50) NOT NULL, distant_description text, close_description text NOT NULL, UNIQUE (area, name) ); CREATE TABLE room_exits ( room_id integer NOT NULL REFERENCES rooms(id), direction integer REFERENCES directions(id), other_side integer NOT NULL REFERENCES rooms(id), PRIMARY KEY (room_id, direction) );