화면 및 기능 구상을 하며 어떠한 데이터베이스 가 있어야 하는지 대략 생각을 해보았고
우리는 erd 작성을 했다.
sqld 자격증을 공부하며 이론상으로 배운 erd 를 직접 만들어보는 과정이었다.
우선 erd 란, Entity Relationship Diagram 의 약자이며, 객체-관계 다이어그램이라 해석할 수 있다. 엔터티와 속성들의 관계를 그림으로 표현한 것이다. 만들고자 하는 시스템/웹 페이지의 데이터 베이스를 한 눈에 볼 수 있는 구조이다.
솔직히 개인적으로 뚝딱뚝딱 가능할 것만 같았는데, 생각보다 고민도 깊게 했고 토론도 길게 진행되었다.
그리고 무한굴레에 빠지기 쉽다.
이 컬럼이 필요할까? 안필요할거 같은데? 이 엔터티가 필요하나? 정규화하면 이렇게 변하고,, 비정규화를 해도 될 듯? 이 컬럼은 정확히 뭘 뜻하는 거지?
팀원들과의 의사소통, 대화가 얼마나 중요한지 또 깨달은 부분... ╮(╯▽╰)╭
크게 erd 를 보면

기본엔터티 / 중심엔터티 / 행위 엔터티를 색으로 구분하였다.
대표적으로 회원 엔터티는

위와 같다.
회원들을 구분할 수 있는 아이디에 primary key를 주었다.
(primary key는 기본적으로 not null특성을 가지고 있다. 아이디가 없는 회원은 없으니까!)
또 외래키를 가지고 있는 문의게시판 엔터티이다.

회원엔터티에서 아이디를, 직원 엔터티에서 직원 코드를 forign key 로 가져온다.
erd 작성 후 선생님께 피드백을 요청했는데,
직원코드, 시설코드, 수강코드 등과 같이 코드가 많다면 코드를 분류할 수 있는 코드 분류표를 작성하여 일관된 코드를 선언하라 하셨다.
하여

다음과 같이 코드 항목 정리 및 약어를 정하여 정리하였다.
💃💭
엔터티를 만들면서 컬럼 이름 정하기는 생각보다 어렵다.. 영어의 중요성 깨닫기.