※ 이전 게시물 1:M 관계 (part 1)이어서 다른 예제진행
□ 주제 : 회사/부서 모델링
□ 세부내용
○ 회사 테이블 생성 (PK값에 자동증분설정 X)
○ 부서 테이블 생성 (PK값에 자동증분설정 X)
○ 회사와 부서 테이블간 관계 설정
□ 쿼리문
--회사 및 부서 추가①
--PK 속성에 Auto-increment를 지정안했기 때문에 PK값을 직접 지정해야함
insert into company_tb values(1,'samsung','12341234')
insert into dept_tb values(1,1,'전략기획')
insert into dept_tb values(2,1,'해외마케팅')
insert into dept_tb values(3,1,'국내마케팅')
insert into dept_tb values(4,1,'R&D')
--회사 및 부서 추가②
--PK 속성에 Auto-increment를 지정안했기 때문에 PK값을 직접 지정해야함
insert into company_tb values(2, 'kakao','54321321')
insert into dept_tb(dept_ID, ID, dept_Name) values(1, 2,'카카오페이')
insert into dept_tb(dept_ID, ID, dept_Name) values(2, 2,'총무부')
insert into dept_tb(dept_ID, ID, dept_Name) values(3, 2,'마케팅부')
insert into dept_tb(dept_ID, ID, dept_Name) values(4, 2,'인사부')
insert into dept_tb(dept_ID, ID, dept_Name) values(5, 2,'영업부')
--결과조회 : 회사별 부서현황
select*from company_tb a
left join dept_tb b on a.ID = b.ID
--해당 쿼리를 실행시키면 오류발생
--오류사유 : 해당 부모키를 참조하는 자식테이블의 값들이 존재하기 때문.
-- 삭제하고자할 시 자식테이블에서의 부모키를 참조하는 자식 데이터를 삭제해야함
delete company_tb where ID = 2
'DB > DB_Modeling' 카테고리의 다른 글
M:N 관계 (0) | 2023.10.16 |
---|---|
1:M 관계와 재귀적 관계 (part 3) (0) | 2023.10.13 |
1:M 관계 (part 1) (1) | 2023.10.11 |
PK(primary Key) 설계 (0) | 2023.10.10 |
데이터 타입 (0) | 2023.10.08 |