forked from Onederful-Project/spring-onederful
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathonederful.sql
More file actions
62 lines (56 loc) · 2.81 KB
/
Copy pathonederful.sql
File metadata and controls
62 lines (56 loc) · 2.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
CREATE TABLE users
(
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '사용자 식별자',
username VARCHAR(100) NOT NULL UNIQUE COMMENT '아이디',
email VARCHAR(100) NOT NULL UNIQUE COMMENT '이메일',
password VARCHAR(255) NOT NULL COMMENT '비밀번호',
name VARCHAR(100) NOT NULL COMMENT '이름',
role VARCHAR(50) NOT NULL COMMENT '권한 (ENUM)',
created_at DATETIME COMMENT '생성일자',
updated_at DATETIME COMMENT '수정일자',
deleted_at DATETIME COMMENT '삭제날짜',
is_deleted BOOLEAN NOT NULL DEFAULT FALSE COMMENT '삭제여부'
);
CREATE TABLE tasks
(
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '업무 식별자',
title VARCHAR(100) NOT NULL COMMENT '제목',
description TEXT NOT NULL COMMENT '설명',
priority VARCHAR(100) NOT NULL COMMENT '우선순위 식별자 (ENUM)',
assignee_id BIGINT NOT NULL COMMENT '담당자 식별자 (FK)',
user_id BIGINT NOT NULL COMMENT '작성자 식별자 (FK)',
status VARCHAR(100) NOT NULL COMMENT '태스크 상태 (ENUM)',
due_date DATETIME COMMENT '마감일자',
started_at DATETIME COMMENT '시작일자',
created_at DATETIME COMMENT '생성일자',
updated_at DATETIME COMMENT '수정일자',
deleted_at DATETIME COMMENT '삭제날짜',
is_deleted BOOLEAN NOT NULL DEFAULT FALSE COMMENT '삭제여부',
FOREIGN KEY (assignee_id) REFERENCES users (id) ON DELETE CASCADE,
FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE CASCADE
);
CREATE TABLE comments
(
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '댓글 식별자',
content TEXT NOT NULL COMMENT '댓글 내용',
task_id BIGINT NOT NULL COMMENT '업무 식별자 (FK)',
user_id BIGINT NOT NULL COMMENT '작성자 식별자 (FK)',
created_at DATETIME COMMENT '생성일자',
updated_at DATETIME COMMENT '수정일자',
deleted_at DATETIME COMMENT '삭제날짜',
is_deleted BOOLEAN NOT NULL DEFAULT FALSE COMMENT '삭제여부',
FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE CASCADE,
FOREIGN KEY (task_id) REFERENCES tasks (id) ON DELETE CASCADE
);
CREATE TABLE logs
(
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '로그 식별자',
user_id BIGINT NOT NULL COMMENT '사용자 식별자 (FK)',
activity VARCHAR(100) NOT NULL COMMENT '활동 유형',
ip_address VARCHAR(100) NOT NULL COMMENT 'ip 주소',
method VARCHAR(100) NOT NULL COMMENT '요청 메서드 (ENUM)',
target_id BIGINT NOT NULL COMMENT '작업 대상 식별자',
request_url VARCHAR(200) NOT NULL COMMENT '로그 요청 url',
created_at DATETIME COMMENT '생성일자',
FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE CASCADE
);