데이터의 형태를 살펴보아야 하는데, 여러가지 형태가 있지만 대표적인 형태는 다음과 같을 수 있다.
202401,홍길동,32,010-1111-1111,aaa@aa.ac.kr
<students>
<student>
<student_num> 202401</student_num>
<student_name part=home">홍길동</student_num>
<age>32</age>
</student>
<student>.....</student>
</students>
[
{"student_num":202401,"student_name":"홍길동", "age":32, "phone":010-1111-2222, "email":"aaa@aa.ac.kr"}
{"student_num":202401,"student_name":"홍길동", "age":32, "phone":010-1111-2222, "email":"aaa@aa.ac.kr"}
]
앞으로 진행할 과정에서 필요한 데이터베이스 관리를 위해 MySQL Workbench를 설치하였습니다.
설치과정은 다음 링크를 참고해주세요! (https://hongong.hanbit.co.kr/mysql-%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C-%EB%B0%8F-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0mysql-community-8-0/)
설치를 마치면 다음과 같은 페이지가 나오는데, 여기서 쿼리문을 작성해보기 위해 'File > New Query Tab'을 선택해줍니다.
이때, m:n의 관계로 엮어 있는 '수강'은 별도의 테이블을 만들어 관계를 구현해줘야 한다.
여기서 AK는 Alternative Key를 의미하는데 성능상의 이유로 사용되는 가상키이다. 수강신청 정보를 저장할 때 중복되는 수강정보를 저장하면 안되므로 PK가 아닌, AK로 사용을 한다.
예를 들어, 구매 테이블에서 구매번호를 저장할 때 제품코드와 고객코드 정보가 중복될 수 있으므로 구매번호가 FK가 되어야 한다. 하지만, 수강 테이블에서는 과목코드와 학번은 중복이 되면 안되므로 수강번호를 AK로 설정한 것이다.
이를 테이블로 시각화해보면...
다음과 같이 표현할 수 있다.