A Free Database Designer for Developers and Analysts
- dbdiagram.io 사용해서 ERD 그림
- DB 스키마를 이미 그린 상태라 SQL 쿼리문을 툴에 넣어서 ERD를 자동 생성함
게시판 제작을 위해 작성한 SQL 쿼리
-- study.sg_user definition
CREATE TABLE `sg_user` (
`USER_PW` varchar(100) NOT NULL COMMENT '사용자 비밀번호',
`USER_NM` varchar(50) NOT NULL COMMENT '사용자 이름',
`USER_EMAIL` varchar(50) NOT NULL COMMENT '사용자 이메일',
`USER_PN` varchar(13) NOT NULL COMMENT '사용자 휴대폰 번호(- 포함)',
`USER_BD` varchar(10) NOT NULL COMMENT '사용자 생년월일(- 포함)',
`USER_GENDER` int(1) NOT NULL COMMENT '사용자 성별(0:남성, 1:여성)',
`REG_DT` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp() COMMENT '회원가입 날짜',
`ADMIN_CHK` int(1) NOT NULL DEFAULT 0 COMMENT '관리자 구분(0: 일반회원, 1: 관리자)',
`USER_ID` varchar(50) NOT NULL,
PRIMARY KEY (`USER_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='사용자 정보';
-- study.sg_notice definition
CREATE TABLE `sg_notice` (
`NO` int(10) NOT NULL COMMENT '게시물 번호',
`TITLE` varchar(200) NOT NULL COMMENT '게시물 제목',
`WRITER` varchar(50) NOT NULL COMMENT '게시물 저자',
`REG_DT` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp() COMMENT '게시물 등록일',
`VIEWS` int(10) NOT NULL DEFAULT 0,
`CONTENT` text NOT NULL COMMENT '게시물 내용',
`FILE_NM` varchar(100) DEFAULT NULL COMMENT '첨부파일 이름',
PRIMARY KEY (`NO`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='공지사항';
-- study.sg_board definition
CREATE TABLE `sg_board` (
`NO` int(10) NOT NULL COMMENT '게시물 번호',
`TITLE` varchar(200) NOT NULL COMMENT '게시물 번호',
`WRITER` varchar(50) NOT NULL COMMENT '게시물 저자',
`REG_DT` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp() COMMENT '게시물 등록일',
`VIEWS` int(10) NOT NULL DEFAULT 0 COMMENT '게시물 조회수',
`CONTENT` text NOT NULL COMMENT '게시물 내용',
`FILE_NM` varchar(100) DEFAULT NULL COMMENT '첨부파일 이름',
PRIMARY KEY (`NO`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='자유게시판';
-- study.sg_board_comment definition
CREATE TABLE `sg_board_comment` (
`NO` int(20) NOT NULL COMMENT '댓글 번호',
`COMMENT_GRN` int(10) NOT NULL COMMENT '댓글 그룹 번호',
`BOARD_NO` int(10) NOT NULL COMMENT '게시물 번호',
`WRITER` varchar(50) NOT NULL COMMENT '댓글 저자',
`WRITER_PW` varchar(100) DEFAULT NULL COMMENT '댓글 저자의 비밀번호(비회원)',
`COMMENT` text NOT NULL COMMENT '댓글 내용',
`REG_DT` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp() COMMENT '댓글 등록일',
`USER_CHK` int(1) NOT NULL COMMENT '회원 구분(0: 비회원, 1: 회원)',
`DEL_CHK` int(1) NOT NULL DEFAULT 0 COMMENT '삭제 구분(0: 삭제 안된 댓글, 1: 삭제된 댓글)',
PRIMARY KEY (`NO`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='자유게시판 댓글';
-- study.sg_file definition
CREATE TABLE `sg_file` (
`FILE_NM` varchar(100) NOT NULL COMMENT '첨부파일명',
`FILE_ORNM` varchar(50) NOT NULL COMMENT '첨부파일 원본명',
`FILE_SIZE` int(10) NOT NULL COMMENT '첨부파일 사이즈(byte)',
`FILE_PATH` varchar(200) NOT NULL COMMENT '첨부파일 경로',
PRIMARY KEY (`FILE_NM`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='첨부파일 정보';
- DBeaver를 사용해 테이블을 생성한 후, SQL문을 추출함
- 위 SQL문을 사용해서 ERD를 생성함
사용방법
- 사이트에 접속후 로그인
- 로그인을 해야 SQL 쿼리를 활용해서 제작하거나, SQL 쿼리문을 추출할수 있음
- Import 클릭 후, Import from MySQL 클릭
- 화면과 같은 창이 뜨면 작성했던 쿼리문 입력
- 입력 후 Submit 클릭
- 작성된 ERD 확인
- 등록일을 의미하는 REG_DT(timestamp)는 2번에서 문제가 생겨서 ERD 생성후 좌측 입력창에서 아래 코드를 따로 추가함
"REG_DT" timestamp [not null, note: '등록일']
- 작성된 ERD 확인
완성된 ERD
'CS > SQL' 카테고리의 다른 글
[프로그래머스] 조건에 맞는 도서 리스트 출력하기 (0) | 2023.07.14 |
---|---|
[프로그래머스] 3월에 태어난 여성 회원 목록 출력하기 (0) | 2023.07.05 |
[프로그래머스] 흉부외과 또는 일반외과 의사 목록 출력하기 (0) | 2023.07.04 |
[프로그래머스] 강원도에 위치한 생산공장 목록 출력하기 (0) | 2023.07.03 |
[프로그래머스] 조건에 부합하는 중고거래 댓글 조회하기 (0) | 2023.07.01 |
댓글