Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ASP
- springboot
- 람다식함수
- 가상머신
- db
- 자동증가열
- memoryDB
- windows7
- mssql
- ascx.cs
- 다중pk
- PHP
- 트리플DES
- 코딩테스트
- C#
- 쿼리
- 오라클
- HTML
- CrossSiteScripting
- 데이터베이스
- 다중기본키
- oracle
- 스프링부트
- 프로그래머스
- javascript
- 이미지엑박
- 자바스크립트
- VMWare
- mysql
- SQL
Archives
- Today
- Total
개발바닥 아방수
기본키가 다중컬럼으로 이루어져있을때 본문
되게 간단한건데 오늘 새롭게 알게되서 정리한다.
난 여태 한 테이블에 기본키가 2개 이상의 컬럼으로 이루어져있으면
그게 각각의 키로 인식해서 두 컬럼 모두 개별적으로 중복이 되면 안되는줄알았다.
그래서 두테이블간에 관계를 맺을때 식별자와 비식별자관계가 무슨 차이인지 잘 몰랐는데
2개 이상의 컬럼을 개별적으로 보는게 아니라 모두 합쳤을때 중복이 되면 안되는거였다.
즉, A컬럼과 B컬럼이 기본키로 잡혀있다고 가정할때 내가 여태 잘못알고있던 방식은 A는 A끼리 중복이 되면 안되고 B는 B끼리 중복이 되면 안되는줄알았는데 그게 아니고 [A = 1 B = 1], [A = 1, B = 2] 와 같이 두 컬럼 모두 중복이 아니라면 이 데이터는 무결성 원칙을 지키는 것이다.
A컬럼과 B컬럼이 같이 기본키일때
B컬럼만 기본키일때
첫번째 모습에서는 A컬럼의 값이 바뀌면 B컬럼은 다시 1부터 시작하지만 두번째 모습은 B컬럼만 기본키이기때문에 A컬럼의 값이 바뀐다 하더라도 B컬럼은 중복이 되면 안된다.
'데이터베이스' 카테고리의 다른 글
ER 다이어그램 / ERD 기호 및 표기법 (0) | 2022.11.23 |
---|---|
cluster index(클러스터드 인덱스) vs nonclustered index(넌 클러스터드 인덱스) (0) | 2022.11.23 |
DBMS별 Schema(스키마) 와 Database와 차이점 (0) | 2022.11.23 |