2019-03-06 01:00:01 +00:00
|
|
|
create table comment (
|
|
|
|
id serial primary key,
|
2019-04-03 06:49:32 +00:00
|
|
|
creator_id int references user_ on update cascade on delete cascade not null,
|
2019-03-06 01:00:01 +00:00
|
|
|
post_id int references post on update cascade on delete cascade not null,
|
|
|
|
parent_id int references comment on update cascade on delete cascade,
|
2019-04-03 06:49:32 +00:00
|
|
|
content text not null,
|
2019-04-20 04:06:25 +00:00
|
|
|
removed boolean default false not null,
|
|
|
|
read boolean default false not null,
|
2019-03-06 01:00:01 +00:00
|
|
|
published timestamp not null default now(),
|
|
|
|
updated timestamp
|
|
|
|
);
|
|
|
|
|
|
|
|
create table comment_like (
|
|
|
|
id serial primary key,
|
2019-04-03 06:49:32 +00:00
|
|
|
user_id int references user_ on update cascade on delete cascade not null,
|
2019-03-06 01:00:01 +00:00
|
|
|
comment_id int references comment on update cascade on delete cascade not null,
|
2019-03-28 19:32:08 +00:00
|
|
|
post_id int references post on update cascade on delete cascade not null,
|
2019-03-06 01:00:01 +00:00
|
|
|
score smallint not null, -- -1, or 1 for dislike, like, no row for no opinion
|
2019-03-28 19:32:08 +00:00
|
|
|
published timestamp not null default now(),
|
2019-04-03 06:49:32 +00:00
|
|
|
unique(comment_id, user_id)
|
2019-03-06 01:00:01 +00:00
|
|
|
);
|
2019-04-20 04:06:25 +00:00
|
|
|
|
|
|
|
create table comment_saved (
|
|
|
|
id serial primary key,
|
|
|
|
comment_id int references comment on update cascade on delete cascade not null,
|
|
|
|
user_id int references user_ on update cascade on delete cascade not null,
|
|
|
|
published timestamp not null default now(),
|
|
|
|
unique(comment_id, user_id)
|
|
|
|
);
|