[SpringBoot - 관리자페이지] 3. 회원가입 필요한 테이블 설정과 관리자계정 insert 시키기

JEONG SUJIN·2024년 1월 8일
0

MySql을 이용해서 사용

1.tb_member 테이블생성

일단 내가 넣고싶은 칼럼을 설정했다. 여기서 다 쓸수 있을진 모르겠지만 대략적으로 생성했다..ㅎ

create table tb_member(
member_id bigint(20) not null auto_increment comment '회원번호 (PK)',
login_id varchar(200) not null comment '로그인 ID',
member_pw varchar(200) not null comment '비밀번호',
member_name varchar(100) not null comment '이름',
member_mail varchar(100) not null comment '이메일',
gender enum('M','F') not null comment '성별',
birthday date not null comment '생년월일',
member_addr1 varchar(100) not null comment '주소1',
member_addr2 varchar(100) not null comment '주소2', 
member_addr3 varchar(100) not null comment '주소3', 
delete_yn tinyint(1) not null comment '삭제여부',
created_date datetime not null default current_timestamp() comment '생성일시',
modified_date datetime  default null comment '최종 수정일시',
admin_ck int not null comment '관리자 유무',
money int not null comment '충전',
primary key (member_id ),
unique key uix_member_login_id (login_id)
)comment '회원';

application.properties에 설정에 아래 코드처럼 추가

#SELECT 칼럼과 멤버 변수 매핑(바인딩)하기, 언더바를 camel case로 변환하는 설정.
mybatis.configuration.map-underscore-to-camel-case=true

DB에서 만든 칼럼명 언더바를 camel case로 변환하는 설정.
DB는 대소문자 구별이 없으므로 언더바를 이용해 단어의 결합을 구분,
java는 대소문자를 구분하므로 camel case방식을 사용하기 때문에
서로 이름이 다르게 되는데 이를 같은 이름으로 인식하여 의외로 에러잡는데 시간이 많이
걸리는걸 방지하기 위해 설정!

2.관리자계정 Insert 시키기 (임의로내가 넣은거, 타입확인하고 칼럼명순서대로 작성)

여기서 하나 배운건
자동증감은 null로 하면 자동적으로 생기는걸 알았고,
생년월일과 생성일시는 둘다 date 타입인데 default와 current_timestamp() 차이로 시간을 많이잡아먹었다..
자동으로 생기니 당연히 칼럼을 빼고 입력했다... ㅠㅠㅠ큐
계속 안되길래 정신차리고 하나씩 검색으로 고치고 나머지도 또 고치고 결국 성공..! 😵‍💫

-- 회원가입 쿼리(MySQL), 관리자 아이디 만들기
-- 자동 증감은 null로 하면 자동으로 생성해줌
insert into tb_member values(null, 'admin', 'admin', 'admin', 'admin', 'F', "1992-04-24", 'admin', 'admin', 'admin', 0, now(), null, 1, 100);

데이터 값 들어가고 성공 !

profile
기록하기

0개의 댓글