forked from teampro05/team16
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathteam16.sql
220 lines (199 loc) · 9.01 KB
/
team16.sql
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
CREATE DATABASE team16;
USE team16;
-- 회원
CREATE TABLE user(
no INT PRIMARY KEY AUTO_INCREMENT, -- 고유번호
id VARCHAR(20) UNIQUE KEY NOT NULL, -- 로그인 아이디
pw VARCHAR(300) NOT NULL, -- 비밀번호
name VARCHAR(100) NOT NULL, -- 이름
tel VARCHAR(20) NOT NULL, -- 전화번호
email VARCHAR(100), -- 이메일
addr1 VARCHAR(100), -- 주소
addr2 VARCHAR(200), -- 상세 주소
addr3 VARCHAR(100), -- 주요 직거래 주소
postcode VARCHAR(10), -- 우편 번호
status ENUM('ACTIVE','DORMANT','REMOVE'), -- REMOVE(삭제), DORMANT(휴면), ACTIVE(활동)
ROLE ENUM('USER','ADMIN','TEACHER'),
createAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- 회원 등록일
loginAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP -- 마지막 로그인
);
CREATE TABLE course(
no INT PRIMARY KEY AUTO_INCREMENT COMMENT '강좌번호',
id VARCHAR(20) NOT NULL COMMENT '작성자',
cate VARCHAR(100) NOT NULL COMMENT '과목',
level int comment '학년',
title VARCHAR(100) COMMENT '제목',
content VARCHAR(2000) COMMENT '내용',
cnt INT DEFAULT 0 COMMENT '조회수',
created_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '게시일',
ino INT NOT NULL COMMENT '강사코드 (FK)',
peo INT DEFAULT 0 COMMENT '현재수강인원',
peo_max INT COMMENT '최대 수강인원'
-- FOREIGN KEY(id) REFERENCES user(NAME),
-- FOREIGN KEY(ino) REFERENCES instructor(no)
);
-- 강의 테이블
-- 여러개의 영상을 하나의 강의 영상으로 묶는 테이블
CREATE TABLE lecture(
no INT PRIMARY KEY AUTO_INCREMENT COMMENT '강의번호',
cno INT NOT NULL COMMENT '강좌번호',
title VARCHAR(50) NOT NULL COMMENT '강의 제목',
explan VARCHAR(100) NOT NULL COMMENT '강의 설명',
keyword VARCHAR(50) COMMENT '키워드',
FOREIGN KEY(cno) REFERENCES course(NO)
);
-- 강사, 선생님 테이블
CREATE TABLE instructor(
NO INT PRIMARY KEY AUTO_INCREMENT, -- 선생님 번호
NAME VARCHAR(10), -- 선생님 이름
tel VARCHAR(20), -- 선생님 전화번호
email VARCHAR(100), -- 선생님 이메일
intro VARCHAR(1000), -- 선생님 소개글
cate VARCHAR(20), -- 선생님 담당 과목
img VARCHAR(1000), -- 선생님 프로필 이미지
id VARCHAR(50) -- 선생님 아이디
-- FOREIGN KEY(id) REFERENCES user(id) ON DELETE CASCADE -- 선생님 아이디 외래키
);
-- 강의 영상 정보 db
CREATE TABLE fileobj (
no int NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '영상번호',
cno INT COMMENT '강좌 번호',
lno INT COMMENT '강의 번호',
savefolder VARCHAR(400) COMMENT '저장경로',
originfile VARCHAR(400) COMMENT '실제 파일 이름',
savefile VARCHAR(800) COMMENT '난수화된 저장 파일이름',
filesize INT COMMENT '파일 사이즈',
uploaddate VARCHAR(100),
FOREIGN KEY(cno) REFERENCES course(no),
FOREIGN KEY(lno) REFERENCES lecture(no)
);
-- 강좌 썸네일 정보 db
CREATE TABLE cimgobj (
no int NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '이미지번호',
cno INT COMMENT '강좌 번호',
savefolder VARCHAR(400) COMMENT '저장경로',
originfile VARCHAR(400) COMMENT '실제 파일 이름',
savefile VARCHAR(800) COMMENT '난수화된 저장 파일이름',
filesize INT COMMENT '파일 사이즈',
created_time VARCHAR(100),
FOREIGN KEY(cno) REFERENCES course(no)
);
-- 강의 썸네일 정보 db
CREATE TABLE limgobj (
no int NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '이미지번호',
lno INT COMMENT '강의 번호',
savefolder VARCHAR(400) COMMENT '저장경로',
originfile VARCHAR(400) COMMENT '실제 파일 이름',
savefile VARCHAR(800) COMMENT '난수화된 저장 파일이름',
filesize INT COMMENT '파일 사이즈',
created_time VARCHAR(100),
FOREIGN KEY(lno) REFERENCES lecture(no)
);
-- 강의 문제 정보 db
-- 아직 구상중
CREATE TABLE lectest (
no int NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '자료번호',
lno INT COMMENT '강의 번호',
savefolder VARCHAR(400) COMMENT '저장경로',
originfile VARCHAR(400) COMMENT '실제 파일 이름',
savefile VARCHAR(800) COMMENT '난수화된 저장 파일이름',
filesize INT COMMENT '파일 사이즈',
created_time VARCHAR(100),
FOREIGN KEY(lno) REFERENCES lecture(no)
);
-- board
CREATE TABLE board(
no INT PRIMARY KEY AUTO_INCREMENT, -- (게시글 번호) 자동 발생
type ENUM('notice','qna','fileboard') NOT NULL, -- 게시글 타입: notice, faq, forum, fileboard
title VARCHAR(200) NOT NULL, -- (게시글 제목)
content VARCHAR(1000), -- (게시글 내용)
author VARCHAR(16) NOT NULL, -- (작성자)
files VARCHAR(255),
regdate TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- (등록일)
visited INT DEFAULT 0 -- (조회수)
);
--------------------------------------------교재 및 교재 이미지 업로드-------------------------------------------------
-- 초등 (Elementary)
CREATE TABLE Ebook(
NO INT PRIMARY KEY AUTO_INCREMENT, -- 교재코드
id VARCHAR(20) NOT NULL, -- 작성자
title VARCHAR(2000),
content VARCHAR(2000), -- 내용
servecontent VARCHAR(1000), -- 요약 내용
price INT DEFAULT 10, -- 가격
publish VARCHAR(50),
deleteyn VARCHAR(10) DEFAULT 'n'
);
-- 초등 교재 이미지
CREATE TABLE EbookImg(
NO INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Ebno INT NOT NULL,
savefolder VARCHAR(400),
originfile VARCHAR(400),
savefile VARCHAR(800),
filesize LONG,
uploaddate DATETIME DEFAULT CURRENT_TIMESTAMP
);
-- 중학 (Middle)
CREATE TABLE Mbook(
NO INT PRIMARY KEY AUTO_INCREMENT, -- 교재코드
id VARCHAR(20) NOT NULL, -- 작성자
title VARCHAR(2000),
content VARCHAR(2000), -- 내용
servecontent VARCHAR(1000), -- 요약 내용
price INT DEFAULT 10, -- 가격
publish VARCHAR(50),
deleteyn VARCHAR(10) DEFAULT 'n'
);
-- 중학 교재 이미지
CREATE TABLE MbookImg(
NO INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Mbno INT NOT NULL,
savefolder VARCHAR(400),
originfile VARCHAR(400),
savefile VARCHAR(800),
filesize LONG,
uploaddate DATETIME DEFAULT CURRENT_TIMESTAMP
);
-- 수능 (High)
CREATE TABLE Hbook(
NO INT PRIMARY KEY AUTO_INCREMENT, -- 교재코드
id VARCHAR(20) NOT NULL, -- 작성자
title VARCHAR(2000),
content VARCHAR(2000), -- 내용
servecontent VARCHAR(1000), -- 요약 내용
price INT DEFAULT 10, -- 가격
publish VARCHAR(50),
deleteyn VARCHAR(10) DEFAULT 'n'
);
-- 수능 교재 이미지
CREATE TABLE HbookImg(
NO INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Hbno INT NOT NULL,
savefolder VARCHAR(400),
originfile VARCHAR(400),
savefile VARCHAR(800),
filesize LONG,
uploaddate DATETIME DEFAULT CURRENT_TIMESTAMP
);
-- 토익 (Toeic)
CREATE TABLE Tbook(
NO INT PRIMARY KEY AUTO_INCREMENT, -- 교재코드
id VARCHAR(20) NOT NULL, -- 작성자
title VARCHAR(2000),
content VARCHAR(2000), -- 내용
servecontent VARCHAR(1000), -- 요약 내용
price INT DEFAULT 10, -- 가격
publish VARCHAR(50),
deleteyn VARCHAR(10) DEFAULT 'n'
);
-- 토익 교재 이미지
CREATE TABLE TbookImg(
NO INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Tbno INT NOT NULL,
savefolder VARCHAR(400),
originfile VARCHAR(400),
savefile VARCHAR(800),
filesize LONG,
uploaddate DATETIME DEFAULT CURRENT_TIMESTAMP
);