안녕하세요 성조입니다.
지속적으로 erd에 대한 요소 값들이 변경되고 있기 때문에 학습에 erd에 대해서 학습하는 생각으로 정리 작성하여 올립니다.
2022.02.26 - [study/Database] - [파이널 프로젝트] pet and pet erd
이전에 작성했던 erd가 프로젝트가 진행되면서 파트별로 구현된 기능들이 [React & Node] 통합 과정 속에서 이전 작성된 erd 기반으로 테이블들을 만들고 현재 구현된 부분에 대해서 Slack에서 지속적인 소통을 통해서 스키마 수정을 얘기하고 공유하는 형식으로 진행되고 있습니다.
테이블에 요소 값들은 현재는 카멜 표기법을 이용하여 진행하고 있습니다.
각 담당 기능이 다르며, 초기에 작성된 erd에서 많이 변화가 이뤄지고 있다 생각됩니다. 테이블에 대한 값들은 지속적인 리팩토링 과정을 통해서 코드를 정리하고 있고, 앞으로도 지속적으로 테이블 수정이 진행될 예정입니다.
모든 프로젝트가 종료되면 그에 맞게 ERD 디자인을 변경해서 작성할 예정입니다.
이번에 작성될 schema와 table은 제가 작성했던 부분에 대해서 정리하는 내용입니다. 프로젝트가 종료된 이후에 다른 분들의 코드와 쿼리문을 분석할 수 있도록 포스팅을 진행할 예정입니다.
현재는 관리자 계정을 구분 지어 나누지 못했지만 앞으로 관리자와 유저에 대해서 나눌 수 있도록 구현할 예정에 있습니다. 다음 map을 활용하여 주솟값을 반환받고 저장했습니다.
region1,2,3의 경우 테스트 코드가 아닌 통합 project 현황에서는 시/군/구로 나눠진 상태입니다.
비밀번호 암호화와 토큰 반환을 사용하여 보안과 DB의 안정성을 올렸습니다.
향후 ID 찾기와 PW 찾기는 핸드폰 인증 또는 이메일 인증으로 가입시 입력한 데이터 값으로 처리를 진행해 줄 예정입니다.
기간안에 작성할 수 있을지는 모르겠지만 향후 프로젝트 리팩토링은 portfolio 과정에서 지속적으로 관리하여 관리자 계정에 필요한 콘텐츠를 작성할 예정입니다.
유저 테이블입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
CREATE TABLE userTbl (
userId varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
userEmail varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
userPhone varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
userPw varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '암호화키 길이 길게 배정',
userName varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
userNick varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
zonecode varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '우편번호',
address varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '전체주소',
region1 varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '지역(시도)',
region2 varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '지역(구)',
region3 varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '지역(동)',
detailAddress varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '상세주소',
extraAddress varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '추가 주소',
regDate timestamp NULL DEFAULT NULL COMMENT '생성일자',
roles bit(1) DEFAULT NULL,
userAge int(11) DEFAULT NULL COMMENT '값 아직',
userSex bit(1) DEFAULT NULL COMMENT '성별',
location_agree bit(1) DEFAULT NULL COMMENT '지역 동의',
service_agree bit(1) DEFAULT NULL COMMENT '서비스 동의',
modified timestamp NULL DEFAULT NULL,
PRIMARY KEY (userId) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ;
|
cs |
userAge는 콤보 박스 데이터를 입력받는 형식으로 수정할 계획에 있습니다.
roles는 true, false를 bit에 넣고 회원을 구분하려 했으나 관리자 계정까지 변경 예정에 있으므로 개선을 고민 중인 부분입니다.
감사합니다. 다음 포스팅 때 뵙겠습니다!
'Database > Database' 카테고리의 다른 글
[Database] SQL vs NoSQL (0) | 2022.04.11 |
---|---|
[Database] 함수적 종속성 FD (Funcional Dependency) (2) | 2022.04.04 |
[파이널 프로젝트] pet and pet erd (2) | 2022.02.26 |
세미 프로젝트 erd 제작 후기 (0) | 2022.02.20 |
데이터와 정보란? [Data / information] (0) | 2021.11.22 |