65 lines
1.7 KiB
MySQL
65 lines
1.7 KiB
MySQL
|
CREATE TABLE files (
|
||
|
id UUID NOT NULL,
|
||
|
name VARCHAR(63) NOT NULL,
|
||
|
mime_type VARCHAR(255) NOT NULL,
|
||
|
placement VARCHAR(255) NOT NULL,
|
||
|
created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL,
|
||
|
relation_table VARCHAR(255) NOT NULL,
|
||
|
relation_id UUID NOT NULL,
|
||
|
PRIMARY KEY(id)
|
||
|
);
|
||
|
|
||
|
CREATE TABLE users (
|
||
|
id UUID NOT NULL,
|
||
|
name VARCHAR(63) NOT NULL,
|
||
|
password_hash VARCHAR(255) NOT NULL,
|
||
|
role VARCHAR(63) NOT NULL,
|
||
|
created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL,
|
||
|
updated_at TIMESTAMP(0) WITH TIME ZONE NULL,
|
||
|
created_by UUID NULL,
|
||
|
updated_by UUID NULL,
|
||
|
PRIMARY KEY(id)
|
||
|
);
|
||
|
|
||
|
CREATE TABLE access_forum_moderate_categories (
|
||
|
user_id UUID NOT NULL,
|
||
|
category_id UUID NOT NULL,
|
||
|
PRIMARY KEY(user_id, category_id)
|
||
|
);
|
||
|
|
||
|
CREATE TABLE forum_categories (
|
||
|
id UUID NOT NULL,
|
||
|
name VARCHAR(63) NOT NULL,
|
||
|
slug VARCHAR(63) NOT NULL,
|
||
|
created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL,
|
||
|
updated_at TIMESTAMP(0) WITH TIME ZONE NULL,
|
||
|
created_by UUID NOT NULL,
|
||
|
updated_by UUID NULL,
|
||
|
PRIMARY KEY(id)
|
||
|
);
|
||
|
|
||
|
CREATE TABLE forum_topics (
|
||
|
id UUID NOT NULL,
|
||
|
category_id UUID NOT NULL,
|
||
|
name VARCHAR(63) NOT NULL,
|
||
|
slug VARCHAR(63) NOT NULL,
|
||
|
content TEXT NOT NULL,
|
||
|
created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL,
|
||
|
updated_at TIMESTAMP(0) WITH TIME ZONE NULL,
|
||
|
created_by UUID NOT NULL,
|
||
|
updated_by UUID NULL,
|
||
|
PRIMARY KEY(id)
|
||
|
);
|
||
|
|
||
|
CREATE TABLE forum_comments (
|
||
|
id UUID NOT NULL,
|
||
|
topic_id UUID NOT NULL,
|
||
|
reply_to UUID NULL,
|
||
|
content TEXT NOT NULL,
|
||
|
created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL,
|
||
|
updated_at TIMESTAMP(0) WITH TIME ZONE NULL,
|
||
|
created_by UUID NULL,
|
||
|
updated_by UUID NULL,
|
||
|
PRIMARY KEY(id)
|
||
|
);
|