CREATE TABLE IF NOT EXISTS attribution
(
id INTEGER PRIMARY KEY,
title TEXT NOT NULL,
link TEXT,
accessed TIMESTAMP WITH TIME ZONE,
year_created INTEGER,
place_published TEXT,
author TEXT,
publisher TEXT,
created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE IF NOT EXISTS creator_attribution
(
id INTEGER PRIMARY KEY,
creator_id INTEGER NOT NULL REFERENCES creator(id) ON UPDATE CASCADE ON DELETE CASCADE,
attribution_id INTEGER NOT NULL REFERENCES attribution(id) ON UPDATE CASCADE ON DELETE CASCADE,
created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE IF NOT EXISTS series_attribution
(
id INTEGER PRIMARY KEY,
series_id INTEGER NOT NULL REFERENCES series(id) ON UPDATE CASCADE ON DELETE CASCADE,
attribution_id INTEGER NOT NULL REFERENCES attribution(id) ON UPDATE CASCADE ON DELETE CASCADE,
created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);