595 lines
23 KiB
SQL
595 lines
23 KiB
SQL
-- 컨텐츠 등록
|
|
CREATE TABLE `edu`.`contents` (
|
|
`content_id` VARCHAR(20) NOT NULL COMMENT '콘텐츠ID', -- 콘텐츠ID
|
|
`category_code` VARCHAR(20) NULL COMMENT '카테고리', -- 카테고리
|
|
`category_group` VARCHAR(20) NULL COMMENT '케테고리구분', -- 케테고리구분
|
|
`title` VARCHAR(200) NULL COMMENT '콘텐츠명', -- 콘텐츠명
|
|
`description` TEXT NULL COMMENT '콘텐츠설명', -- 콘텐츠설명
|
|
`description2` TEXT NULL COMMENT '콘텐츠설명2', -- 콘텐츠설명2
|
|
`content_url` VARCHAR(200) NULL COMMENT '콘텐츠url', -- 콘텐츠url
|
|
`thumbnail_url` VARCHAR(200) NULL COMMENT '썸네일url', -- 썸네일url
|
|
`base_year` CHAR(4) NULL COMMENT '기준년도', -- 기준년도
|
|
`start_date` DATE NULL COMMENT '기준일자', -- 기준일자
|
|
`end_date` DATE NULL COMMENT '종료일자', -- 종료일자
|
|
`sort_order` INTEGER NULL COMMENT '정렬순번', -- 정렬순번
|
|
`goal_code` VARCHAR(20) NULL COMMENT '학습목표코드', -- 학습목표코드
|
|
`image_name` VARCHAR(200) NULL COMMENT '대표이미지명', -- 대표이미지명
|
|
`image_path` VARCHAR(200) NULL COMMENT '이미지경로', -- 이미지경로
|
|
`is_offer` CHAR(1) NULL COMMENT '추천콘텐츠적용여부', -- 추천콘텐츠적용여부
|
|
`offer_id` VARCHAR(20) NULL COMMENT '제안ID', -- 제안ID
|
|
`issue_type_code` VARCHAR(20) NULL COMMENT '인사이트이슈구분', -- 인사이트이슈구분
|
|
`is_active` CHAR(1) NULL COMMENT '사용여부', -- 사용여부
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '컨텐츠 등록';
|
|
|
|
-- 컨텐츠 등록
|
|
ALTER TABLE `edu`.`contents`
|
|
ADD CONSTRAINT `PK_contents` -- 컨텐츠 등록 기본키
|
|
PRIMARY KEY (
|
|
`content_id` -- 콘텐츠ID
|
|
);
|
|
|
|
-- 마이클래스 학습목표 등록
|
|
CREATE TABLE `edu`.`learning_goals` (
|
|
`goal_code` VARCHAR(20) NOT NULL COMMENT '학습목표 코드', -- 학습목표 코드
|
|
`title` VARCHAR(200) NULL COMMENT '학습목표제목', -- 학습목표제목
|
|
`base_year` CHAR(4) NULL COMMENT '기준년도', -- 기준년도
|
|
`end_date` DATE NULL COMMENT '종료일', -- 종료일
|
|
`is_active` CHAR(1) NULL COMMENT '사용여부', -- 사용여부
|
|
`sort_order` INTEGER NULL COMMENT '정렬순번', -- 정렬순번
|
|
`remarks` VARCHAR(200) NULL COMMENT '비고', -- 비고
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '마이클래스 학습목표 등록';
|
|
|
|
-- 마이클래스 학습목표 등록
|
|
ALTER TABLE `edu`.`learning_goals`
|
|
ADD CONSTRAINT `PK_learning_goals` -- 마이클래스 학습목표 등록 기본키
|
|
PRIMARY KEY (
|
|
`goal_code` -- 학습목표 코드
|
|
);
|
|
|
|
-- 코드상세
|
|
CREATE TABLE `edu`.`codes` (
|
|
`group_code` VARCHAR(10) NOT NULL COMMENT '메인코드', -- 메인코드
|
|
`code` VARCHAR(10) NOT NULL COMMENT '서브코드', -- 서브코드
|
|
`base_code` VARCHAR(20) NOT NULL COMMENT '기준코드', -- 기준코드
|
|
`code_name` VARCHAR(250) NULL COMMENT '코드명', -- 코드명
|
|
`is_active` CHAR(1) NULL COMMENT '사용구분', -- 사용구분
|
|
`desc01` VARCHAR(250) NULL COMMENT '설명1', -- 설명1
|
|
`desc02` VARCHAR(250) NULL COMMENT '설명2', -- 설명2
|
|
`desc03` VARCHAR(250) NULL COMMENT '설명3', -- 설명3
|
|
`desc04` VARCHAR(250) NULL COMMENT '설명4', -- 설명4
|
|
`desc05` VARCHAR(250) NULL COMMENT '설명5', -- 설명5
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '코드상세';
|
|
|
|
-- 코드상세
|
|
ALTER TABLE `edu`.`codes`
|
|
ADD CONSTRAINT `PK_codes` -- 코드상세 기본키
|
|
PRIMARY KEY (
|
|
`group_code`, -- 메인코드
|
|
`code` -- 서브코드
|
|
);
|
|
|
|
-- 통합인사정보
|
|
CREATE TABLE `edu`.`users` (
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`sys_comp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`name` VARCHAR(100) NULL COMMENT '성명', -- 성명
|
|
`dept_name` VARCHAR(100) NULL COMMENT '부서', -- 부서
|
|
`rank_name` VARCHAR(100) NULL COMMENT '직위', -- 직위
|
|
`join_date` DATE NULL COMMENT '입사일', -- 입사일
|
|
`belong_comp` VARCHAR(100) NULL COMMENT '소속회사', -- 소속회사
|
|
`working_cpmp` VARCHAR(100) NULL COMMENT '근무회사', -- 근무회사
|
|
`intra_pw` VARCHAR(20) NULL COMMENT 'password' -- password
|
|
)
|
|
COMMENT '통합인사정보';
|
|
|
|
-- 통합인사정보
|
|
ALTER TABLE `edu`.`users`
|
|
ADD CONSTRAINT `PK_users` -- 통합인사정보 기본키
|
|
PRIMARY KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 댓글정보
|
|
CREATE TABLE `edu`.`comments` (
|
|
`id` VARCHAR(12) NOT NULL COMMENT '댓글ID', -- 댓글ID
|
|
`parent_id` VARCHAR(12) NULL COMMENT '상위댓글ID', -- 상위댓글ID
|
|
`sys_comp_code` VARCHAR(20) NULL COMMENT '기준법인', -- 기준법인
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`comment` VARCHAR(255) NULL COMMENT '내용', -- 내용
|
|
`content_id` INTEGER NULL COMMENT '콘텐츠ID', -- 콘텐츠ID
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '댓글정보';
|
|
|
|
-- 댓글정보
|
|
ALTER TABLE `edu`.`comments`
|
|
ADD CONSTRAINT `PK_comments` -- 댓글정보 기본키
|
|
PRIMARY KEY (
|
|
`id` -- 댓글ID
|
|
);
|
|
|
|
-- 학습이력
|
|
CREATE TABLE `edu`.`learning_histories` (
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`sys_comp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`content_id` VARCHAR(20) NOT NULL COMMENT '콘텐츠ID', -- 콘텐츠ID
|
|
`first_viewed_at` DATETIME NULL COMMENT '최초시청일시', -- 최초시청일시
|
|
`last_viewed_at` DATETIME NULL COMMENT '최종시청일시', -- 최종시청일시
|
|
`watch_tm` DECIMAL(18) NULL COMMENT '영상시작길이', -- 영상시작길이
|
|
`content_tm` DECIMAL(18) NULL COMMENT '영상길이', -- 영상길이
|
|
`all_tm` DECIMAL(18) NULL COMMENT '누적시청시간', -- 누적시청시간
|
|
`completed_at` DATETIME NULL COMMENT '학습완료일시', -- 학습완료일시
|
|
`comment` VARCHAR(200) NULL COMMENT '한줄소감', -- 한줄소감
|
|
`is_watching` CHAR(1) NULL COMMENT '시청중컨텐츠여부' -- 시청중컨텐츠여부
|
|
)
|
|
COMMENT '학습이력';
|
|
|
|
-- 학습이력
|
|
ALTER TABLE `edu`.`learning_histories`
|
|
ADD CONSTRAINT `PK_learning_histories` -- 학습이력 기본키
|
|
PRIMARY KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code`, -- 기준법인
|
|
`content_id` -- 콘텐츠ID
|
|
);
|
|
|
|
-- 컨텐츠저장
|
|
CREATE TABLE `edu`.`content_wishlist` (
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`sys_comp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`content_id` INTEGER NOT NULL COMMENT '콘텐츠ID', -- 콘텐츠ID
|
|
`favorited_at` DATETIME NULL COMMENT '찜한일시', -- 찜한일시
|
|
`is_active` CHAR(1) NULL COMMENT '사용여부', -- 사용여부
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '컨텐츠저장';
|
|
|
|
-- 컨텐츠저장
|
|
ALTER TABLE `edu`.`content_wishlist`
|
|
ADD CONSTRAINT `PK_content_wishlist` -- 컨텐츠저장 기본키
|
|
PRIMARY KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code`, -- 기준법인
|
|
`content_id` -- 콘텐츠ID
|
|
);
|
|
|
|
-- 사용자 키워드
|
|
CREATE TABLE `edu`.`user_keywords` (
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`sys_comp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`keyword_code` VARCHAR(20) NOT NULL COMMENT '키워드코드', -- 키워드코드
|
|
`keyword_name` VARCHAR(100) NULL COMMENT '키워드명', -- 키워드명
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '사용자 키워드';
|
|
|
|
-- 사용자 키워드
|
|
ALTER TABLE `edu`.`user_keywords`
|
|
ADD CONSTRAINT `PK_user_keywords` -- 사용자 키워드 기본키
|
|
PRIMARY KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code`, -- 기준법인
|
|
`keyword_code` -- 키워드코드
|
|
);
|
|
|
|
-- 컨텐츠제안하기
|
|
CREATE TABLE `edu`.`content_offer` (
|
|
`offer_id` VARCHAR(20) NOT NULL COMMENT '제안ID', -- 제안ID
|
|
`type_code` VARCHAR(20) NULL COMMENT '제안구분', -- 제안구분
|
|
`title` VARCHAR(200) NULL COMMENT '제목', -- 제목
|
|
`reference_url` VARCHAR(255) NULL COMMENT 'URL', -- URL
|
|
`reason` TEXT NULL COMMENT '추천이유', -- 추천이유
|
|
`status_code` VARCHAR(20) NULL COMMENT '제안상태', -- 제안상태
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일', -- 수정일
|
|
`member_id` VARCHAR(20) NULL COMMENT 'id', -- id
|
|
`sys_comp_code` VARCHAR(20) NULL COMMENT '기준법인' -- 기준법인
|
|
)
|
|
COMMENT '컨텐츠제안하기';
|
|
|
|
-- 컨텐츠제안하기
|
|
ALTER TABLE `edu`.`content_offer`
|
|
ADD CONSTRAINT `PK_content_offer` -- 컨텐츠제안하기 기본키
|
|
PRIMARY KEY (
|
|
`offer_id` -- 제안ID
|
|
);
|
|
|
|
-- 년도별학습레벨
|
|
CREATE TABLE `edu`.`yearly_learning_stats` (
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`sys_comp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`stats_year` CHAR(4) NOT NULL COMMENT '년도', -- 년도
|
|
`learning_level` VARCHAR(20) NULL COMMENT '학습레벨', -- 학습레벨
|
|
`total_minutes` DECIMAL(18) NULL COMMENT '총학습시간(분)', -- 총학습시간(분)
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '년도별학습레벨';
|
|
|
|
-- 년도별학습레벨
|
|
ALTER TABLE `edu`.`yearly_learning_stats`
|
|
ADD CONSTRAINT `PK_yearly_learning_stats` -- 년도별학습레벨 기본키
|
|
PRIMARY KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code`, -- 기준법인
|
|
`stats_year` -- 년도
|
|
);
|
|
|
|
-- 컨텐츠 키워드
|
|
CREATE TABLE `edu`.`content_keywords` (
|
|
`content_id` VARCHAR(20) NOT NULL COMMENT '콘텐츠ID', -- 콘텐츠ID
|
|
`keyword_code` VARCHAR(20) NOT NULL COMMENT '키워드코드', -- 키워드코드
|
|
`is_active` CHAR(1) NULL COMMENT '사용여부', -- 사용여부
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '컨텐츠 키워드';
|
|
|
|
-- 컨텐츠 키워드
|
|
ALTER TABLE `edu`.`content_keywords`
|
|
ADD CONSTRAINT `PK_content_keywords` -- 컨텐츠 키워드 기본키
|
|
PRIMARY KEY (
|
|
`content_id`, -- 콘텐츠ID
|
|
`keyword_code` -- 키워드코드
|
|
);
|
|
|
|
-- 접속이력
|
|
CREATE TABLE `edu`.`access_history` (
|
|
`accessed_at` TIMESTAMP NOT NULL COMMENT '접속일시', -- 접속일시
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT '사번', -- 사번
|
|
`sys_comp_code` VARCHAR(20) NULL COMMENT '기준법인', -- 기준법인
|
|
`ip_address` VARCHAR(20) NULL COMMENT '접속IP' -- 접속IP
|
|
)
|
|
COMMENT '접속이력';
|
|
|
|
-- 접속이력
|
|
ALTER TABLE `edu`.`access_history`
|
|
ADD CONSTRAINT `PK_access_history` -- 접속이력 기본키
|
|
PRIMARY KEY (
|
|
`accessed_at` -- 접속일시
|
|
);
|
|
|
|
-- 코드마스터
|
|
CREATE TABLE `edu`.`code_group` (
|
|
`group_code` VARCHAR(10) NOT NULL COMMENT '메인코드', -- 메인코드
|
|
`group_name` VARCHAR(250) NULL COMMENT '코드명', -- 코드명
|
|
`is_active` CHAR(1) NULL COMMENT '사용구분', -- 사용구분
|
|
`sort_order` INTEGER NULL COMMENT '정렬구분', -- 정렬구분
|
|
`comment` VARCHAR(250) NULL COMMENT '코멘트', -- 코멘트
|
|
`desc01` VARCHAR(250) NULL COMMENT '설명1', -- 설명1
|
|
`desc02` VARCHAR(250) NULL COMMENT '설명2', -- 설명2
|
|
`desc03` VARCHAR(250) NULL COMMENT '설명3', -- 설명3
|
|
`desc04` VARCHAR(250) NULL COMMENT '설명4', -- 설명4
|
|
`desc05` VARCHAR(250) NULL COMMENT '설명5', -- 설명5
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '코드마스터';
|
|
|
|
-- 코드마스터
|
|
ALTER TABLE `edu`.`code_group`
|
|
ADD CONSTRAINT `PK_code_group` -- 코드마스터 기본키
|
|
PRIMARY KEY (
|
|
`group_code` -- 메인코드
|
|
);
|
|
|
|
-- 첨부파일
|
|
CREATE TABLE `edu`.`files` (
|
|
`content_id` VARCHAR(20) NOT NULL COMMENT '콘텐츠ID', -- 콘텐츠ID
|
|
`id` INTEGER NOT NULL COMMENT '파일ID', -- 파일ID
|
|
`file_name` VARCHAR(200) NULL COMMENT '파일명', -- 파일명
|
|
`file_type` VARCHAR(20) NULL COMMENT '파일구분', -- 파일구분
|
|
`file_path` VARCHAR(200) NULL COMMENT '저장위치', -- 저장위치
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '첨부파일';
|
|
|
|
-- 첨부파일
|
|
ALTER TABLE `edu`.`files`
|
|
ADD CONSTRAINT `PK_files` -- 첨부파일 기본키
|
|
PRIMARY KEY (
|
|
`content_id`, -- 콘텐츠ID
|
|
`id` -- 파일ID
|
|
);
|
|
|
|
-- 선택학습목표
|
|
CREATE TABLE `edu`.`user_learning_goals` (
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`sys_comp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`goal_code` VARCHAR(20) NOT NULL COMMENT '학습목표 코드', -- 학습목표 코드
|
|
`quarter` VARCHAR(20) NULL COMMENT '분기', -- 분기
|
|
`completed_date` DATE NULL COMMENT '학습완료일', -- 학습완료일
|
|
`is_active` CHAR(1) NULL COMMENT '사용여부', -- 사용여부
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '선택학습목표';
|
|
|
|
-- 선택학습목표
|
|
ALTER TABLE `edu`.`user_learning_goals`
|
|
ADD CONSTRAINT `PK_user_learning_goals` -- 선택학습목표 기본키
|
|
PRIMARY KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code`, -- 기준법인
|
|
`goal_code` -- 학습목표 코드
|
|
);
|
|
|
|
-- 법인별키워드
|
|
CREATE TABLE `edu`.`recommend_keywords` (
|
|
`sys_comp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`keyword_code` VARCHAR(20) NOT NULL COMMENT '키워드코드', -- 키워드코드
|
|
`is_active` CHAR(1) NULL COMMENT '사용여부', -- 사용여부
|
|
`created_by` VARCHAR(20) NULL COMMENT '등록자', -- 등록자
|
|
`created_at` TIMESTAMP NULL COMMENT '등록일', -- 등록일
|
|
`updated_by` VARCHAR(20) NULL COMMENT '수정자', -- 수정자
|
|
`updated_at` TIMESTAMP NULL COMMENT '수정일' -- 수정일
|
|
)
|
|
COMMENT '법인별키워드';
|
|
|
|
-- 법인별키워드
|
|
ALTER TABLE `edu`.`recommend_keywords`
|
|
ADD CONSTRAINT `PK_recommend_keywords` -- 법인별키워드 기본키
|
|
PRIMARY KEY (
|
|
`sys_comp_code`, -- 기준법인
|
|
`keyword_code` -- 키워드코드
|
|
);
|
|
|
|
-- 뱃지정보
|
|
CREATE TABLE `edu`.`user_badges` (
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`sys_comp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`seq` INTEGER NOT NULL COMMENT '순번', -- 순번
|
|
`badge_code` VARCHAR(20) NULL COMMENT '뱃지코드', -- 뱃지코드
|
|
`issued_at` DATETIME NULL COMMENT '지급일자' -- 지급일자
|
|
)
|
|
COMMENT '뱃지정보';
|
|
|
|
-- 뱃지정보
|
|
ALTER TABLE `edu`.`user_badges`
|
|
ADD CONSTRAINT `PK_user_badges` -- 뱃지정보 기본키
|
|
PRIMARY KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code`, -- 기준법인
|
|
`seq` -- 순번
|
|
);
|
|
|
|
-- 검색어이력
|
|
CREATE TABLE `edu`.`search_logs` (
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`sys_comp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`seq` INTEGER NOT NULL COMMENT '순번', -- 순번
|
|
`keyword` VARCHAR(50) NULL COMMENT '검색어', -- 검색어
|
|
`searched_at` DATETIME NULL COMMENT '등록일' -- 등록일
|
|
)
|
|
COMMENT '검색어이력';
|
|
|
|
-- 검색어이력
|
|
ALTER TABLE `edu`.`search_logs`
|
|
ADD CONSTRAINT `PK_search_logs` -- 검색어이력 기본키
|
|
PRIMARY KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code`, -- 기준법인
|
|
`seq` -- 순번
|
|
);
|
|
|
|
-- 알람이력
|
|
CREATE TABLE `edu`.`notifications` (
|
|
`member_id` VARCHAR(20) NOT NULL COMMENT 'id', -- id
|
|
`corp_code` VARCHAR(20) NOT NULL COMMENT '기준법인', -- 기준법인
|
|
`seq` INTEGER NOT NULL COMMENT '순번', -- 순번
|
|
`type_code` VARCHAR(20) NULL COMMENT '알람코드', -- 알람코드
|
|
`message` VARCHAR(255) NULL COMMENT '알람내용', -- 알람내용
|
|
`sent_at` DATETIME NULL COMMENT '알람일시' -- 알람일시
|
|
)
|
|
COMMENT '알람이력';
|
|
|
|
-- 알람이력
|
|
ALTER TABLE `edu`.`notifications`
|
|
ADD CONSTRAINT `PK_notifications` -- 알람이력 기본키
|
|
PRIMARY KEY (
|
|
`member_id`, -- id
|
|
`corp_code`, -- 기준법인
|
|
`seq` -- 순번
|
|
);
|
|
|
|
-- 코드상세
|
|
ALTER TABLE `edu`.`codes`
|
|
ADD CONSTRAINT `FK_code_group_TO_codes` -- 코드마스터 -> 코드상세
|
|
FOREIGN KEY (
|
|
`group_code` -- 메인코드
|
|
)
|
|
REFERENCES `edu`.`code_group` ( -- 코드마스터
|
|
`group_code` -- 메인코드
|
|
);
|
|
|
|
-- 댓글정보
|
|
ALTER TABLE `edu`.`comments`
|
|
ADD CONSTRAINT `FK_users_TO_comments` -- 통합인사정보 -> 댓글정보
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 학습이력
|
|
ALTER TABLE `edu`.`learning_histories`
|
|
ADD CONSTRAINT `FK_users_TO_learning_histories` -- 통합인사정보 -> 학습이력
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 학습이력
|
|
ALTER TABLE `edu`.`learning_histories`
|
|
ADD CONSTRAINT `FK_contents_TO_learning_histories` -- 컨텐츠 등록 -> 학습이력
|
|
FOREIGN KEY (
|
|
`content_id` -- 콘텐츠ID
|
|
)
|
|
REFERENCES `edu`.`contents` ( -- 컨텐츠 등록
|
|
`content_id` -- 콘텐츠ID
|
|
);
|
|
|
|
-- 컨텐츠저장
|
|
ALTER TABLE `edu`.`content_wishlist`
|
|
ADD CONSTRAINT `FK_users_TO_content_wishlist` -- 통합인사정보 -> 컨텐츠저장
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 사용자 키워드
|
|
ALTER TABLE `edu`.`user_keywords`
|
|
ADD CONSTRAINT `FK_users_TO_user_keywords` -- 통합인사정보 -> 사용자 키워드
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 컨텐츠제안하기
|
|
ALTER TABLE `edu`.`content_offer`
|
|
ADD CONSTRAINT `FK_users_TO_content_offer` -- 통합인사정보 -> 컨텐츠제안하기
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 년도별학습레벨
|
|
ALTER TABLE `edu`.`yearly_learning_stats`
|
|
ADD CONSTRAINT `FK_users_TO_yearly_learning_stats` -- 통합인사정보 -> 년도별학습레벨
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 컨텐츠 키워드
|
|
ALTER TABLE `edu`.`content_keywords`
|
|
ADD CONSTRAINT `FK_contents_TO_content_keywords` -- 컨텐츠 등록 -> 컨텐츠 키워드
|
|
FOREIGN KEY (
|
|
`content_id` -- 콘텐츠ID
|
|
)
|
|
REFERENCES `edu`.`contents` ( -- 컨텐츠 등록
|
|
`content_id` -- 콘텐츠ID
|
|
);
|
|
|
|
-- 첨부파일
|
|
ALTER TABLE `edu`.`files`
|
|
ADD CONSTRAINT `FK_contents_TO_files` -- 컨텐츠 등록 -> 첨부파일
|
|
FOREIGN KEY (
|
|
`content_id` -- 콘텐츠ID
|
|
)
|
|
REFERENCES `edu`.`contents` ( -- 컨텐츠 등록
|
|
`content_id` -- 콘텐츠ID
|
|
);
|
|
|
|
-- 선택학습목표
|
|
ALTER TABLE `edu`.`user_learning_goals`
|
|
ADD CONSTRAINT `FK_users_TO_user_learning_goals` -- 통합인사정보 -> 선택학습목표
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 선택학습목표
|
|
ALTER TABLE `edu`.`user_learning_goals`
|
|
ADD CONSTRAINT `FK_learning_goals_TO_user_learning_goals` -- 마이클래스 학습목표 등록 -> 선택학습목표
|
|
FOREIGN KEY (
|
|
`goal_code` -- 학습목표 코드
|
|
)
|
|
REFERENCES `edu`.`learning_goals` ( -- 마이클래스 학습목표 등록
|
|
`goal_code` -- 학습목표 코드
|
|
);
|
|
|
|
-- 뱃지정보
|
|
ALTER TABLE `edu`.`user_badges`
|
|
ADD CONSTRAINT `FK_users_TO_user_badges` -- 통합인사정보 -> 뱃지정보
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 검색어이력
|
|
ALTER TABLE `edu`.`search_logs`
|
|
ADD CONSTRAINT `FK_users_TO_search_logs` -- 통합인사정보 -> 검색어이력
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
);
|
|
|
|
-- 알람이력
|
|
ALTER TABLE `edu`.`notifications`
|
|
ADD CONSTRAINT `FK_users_TO_notifications` -- 통합인사정보 -> 알람이력
|
|
FOREIGN KEY (
|
|
`member_id`, -- id
|
|
`corp_code` -- 기준법인
|
|
)
|
|
REFERENCES `edu`.`users` ( -- 통합인사정보
|
|
`member_id`, -- id
|
|
`sys_comp_code` -- 기준법인
|
|
); |