http://www.gurubee.net/lecture/3684
바커 표기법은 영국 컨설팅 회사 CACI 에 의해 처음 개발되었고 , 리차드 바커에 의해 지속으로 업그레이드 되었습니다.
엔터티는 기업에서 지속적으로 저장하고 관리해야 할 대상입니다.
하나의 관리 대상이 엔터니가 되기 위해서는 반드시 두개 이상의 속성을 가져야 합니다.
속성은 하나의 엔터티에 종속되는 명사적 단어들을 말합니다.
일반적으로 명사적 단어들 중에 구성 요소를 포함하고 있는 명사들은 엔터티가 되고 ,
그렇지 못한 명사들은 속성이 됩니다.
- 어떤 값을 반드시 저장해야하는 경우
* (Mandatory)
- 어떤 값이 존재할 수도 있고 존재하지 않을수도 있는 경우
o (Optional)
위의 그림으로 볼때 사원번호
와 사원명
은 반드시 저장해야합니다.
나머지 주민번호 .주소 , 연락처 , 핸드폰번호 , 근무지역은 존재할수도 있고 아닐수도 있습니다.
사원번호 , 사원명 * ( Mandatory)
주민번호 , 주소 , 연락처 , 핸드폰번호 , 근무지역 o (Optional)
한명의 사원은 하나의 부서에 근무를 합니다.
그리고 각 부서에서는 여러명의 사원이 근무를 할수 있습니다.
그러니깐 N:1 의 관계가 됩니다.
A 엔터니에 존재하는 데이터 1개와 관계되는 B 엔터티에 존재하는 데이터의 개수도 1개인 엔터티간의 관계를 1:1 관계라고한다.
A 엔터티에 존재하는 데이터 1개와 관계되는 B 엔터티에 존재하는 데이터의 개수가 여러 개인 엔터티 간의 관계를 1:M의 관계라고 한다.
A 엔터티에 존재하는 데이터 1개와 관계되는 B 엔터티에 존재하는 데이터의 개수가 여러개이며 , B 엔터티에 존재한 데이터 1개와 관계되는 A 엔터티에 존재하는 데이터의 개수도 여러 개인 엔터티 간의 관계를 M:M 관계라고 합니다.
$ : 식별자 비상속
#: 실질 식별자(PK)
(#) : 보조 식별자
* : 반드시 값이 존재해야 하는 속성
0 : 반드시 값이 존재하지 않아도 되는 속성
관계에서
| 표시 있는 것은 식별자로 상속
| 표시 없는 것은 일반속성으로 상속
[1] 위에 : PK 이면서 FK
[2] 밑에 : 반드시 값이 존재하는 속성이면서 FK
이때 오해 할수도 있는것이 ,
PK 랑 * 랑 무슨차이가 있는가 . 생각할 수도 있지만
예를들어 account 에 pk 가 있고 name 이 존재한다.
이때 id 는 pk 이고 name 은 * 라고 생각하시면 될것같다.
시작하는 쪽이 점선으로 시작하면 반대쪽 데이터가 존재하지 않을 수 있음