3 creator_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
4 post_id int REFERENCES post ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
5 parent_id int REFERENCES COMMENT ON UPDATE CASCADE ON DELETE CASCADE,
7 removed boolean DEFAULT FALSE NOT NULL,
8 read boolean DEFAULT FALSE NOT NULL,
9 published timestamp NOT NULL DEFAULT now(),
13 CREATE TABLE comment_like (
14 id serial PRIMARY KEY,
15 user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
16 comment_id int REFERENCES COMMENT ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
17 post_id int REFERENCES post ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
18 score smallint NOT NULL, -- -1, or 1 for dislike, like, no row for no opinion
19 published timestamp NOT NULL DEFAULT now(),
20 UNIQUE (comment_id, user_id)
23 CREATE TABLE comment_saved (
24 id serial PRIMARY KEY,
25 comment_id int REFERENCES COMMENT ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
26 user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
27 published timestamp NOT NULL DEFAULT now(),
28 UNIQUE (comment_id, user_id)