DROP INDEX device_id_idx; DROP INDEX ip_static_id_idx; DROP INDEX ip_address_id_idx; DROP TABLE activity; DROP TABLE devices; DROP TABLE ip_addresses; CREATE TABLE ip_addresses ( id SERIAL UNIQUE PRIMARY KEY, string VARCHAR(15), UNIQUE(string) ); CREATE TABLE devices ( id SERIAL UNIQUE PRIMARY KEY, name VARCHAR(255), mac_address VARCHAR(17), ip_static_id INTEGER, FOREIGN KEY (ip_static_id) REFERENCES ip_addresses(id), UNIQUE(mac_address) ); CREATE TABLE activity ( id SERIAL UNIQUE PRIMARY KEY, minute TIMESTAMP, counter BIGINT, device_id INTEGER NOT NULL, ip_address_id INTEGER NOT NULL, FOREIGN KEY (device_id) REFERENCES devices(id), FOREIGN KEY (ip_address_id) REFERENCES ip_addresses(id) ); CREATE INDEX ip_static_id_idx ON devices (ip_static_id); CREATE INDEX device_id_idx ON activity (device_id); CREATE INDEX ip_address_id_idx ON activity (ip_address_id);