MySQL사용-mini schema 생성
board_info 테이블 생성
AUTO_INCREMENT
-- 보드정보 테이블(번호, 게시판 이름)
create table board_info(
info_idx int AUTO_INCREMENT, -- 게시판 정보 번호
board_name varchar(500) not null, -- 게시판 이름
primary key(info_idx)
);
user테이블
-- 사용자 테이블
create table user(
user_idx int AUTO_INCREMENT,
name varchar(50) not null,
user_id varchar(100) not null,
user_pw varchar(100) not null,
primary key(user_idx)
);
board테이블
-- 보드 테이블
create table board(
board_idx int AUTO_INCREMENT,
title varchar(500) not null,
content text not null,
content_file varchar(500) not null,
writer_idx int , -- user_idx 참조 (외래키)
info_idx int, -- info_idx 참조 (외래키)
regDate datetime,
primary key(board_idx)
);
테이블 새성 후 설정에 들어가서 외래키 설정할거임
Foreign Keys-> name, table 설정 -> column 선택 -> user_idx선택
update나 delete 시
참조하는 테이블에도 삭제나 업데이트를 할것인가?
cascade : 반영
현재 No Action.
예를 들어서 유저가 탈퇴를 했는데
그 유저가 쓴 글은 삭제될것인가?
유저가 아이디를 업데이트 했을 경우 그 유저의 게시글의 아이디도 업데이트 할 것인가?
라는 선택지가 있음.
cascade하면 자동으로 업데이트 됨
Apply
이번에는 info_idx도 외래키 설정해줄거임
regDate 도 notnull, default 값 now() 수정
board_info 테이블에 값 입력하기
INSERT INTO board_info(board_name)
VALUES('자유게시판'),
('유머게시판'),
('정치게시판'),
('스포츠게시판');
'BACKEND > Spring' 카테고리의 다른 글
게시판 만들기 2 - 유효성 검사 (0) | 2023.10.27 |
---|---|
게시판 만들기 2- VO생성 및 MyBatis 설정 , 인터셉터 설정 (0) | 2023.10.26 |
게시판 만들기 2 - BoardController, board(read,modify,write,delete.jsp)페이지 생성 (0) | 2023.10.26 |
게시판 만들기 2 - context path, user(login,logout,modify,join.jsp) (1) | 2023.10.26 |
게시판 만들기 2 - 기본 설정 및 include(nav,footer 분리) (0) | 2023.10.26 |