본문 바로가기

DB

(2)
데이터베이스 식별, 비식별 관계 식별 관계와 비식별 관계란 무엇을 의미하는가? 예를 들어, 축구팀 엔티티와 축구선수 엔티티가 있다. 축구팀은 여러 명의 축구선수를 소유할 수 있으며, 축구선수는 하나의 축구팀에게 소속된다. 하지만 축구선수는 축구팀이 없어도 존재할 수 있다. 소속이 없는 선수의 경우에 말이다. 그러므로 이때 축구선수와 축구화의 관계는 비식별 관계라고 할 수 있다. 이제 축구선수 엔티티와 선수 기록 엔티티를 예를 들어보자. 선수 기록은 축구선수 없이 존재할 수가 없다. 그러므로 축구선수와 선수 기록 간의 관계는 식별 관계이다. 데이터베이스 관점에서 다시 말해보면 식별 관계에서 부모 엔티티의 기본키는 자식 엔티티에 꼭 포함되어 있으며 항상 기본키로 사용된다. 반면에 비식별 관계에서는 부모 엔티티의 기본키가 자식 엔티티에 포함..
몽구스 여러개의 조건으로 다큐먼트 찾기 19.05.31 작성 다음과 같이 4개의 다큐먼트가 저장되어 있다고 가정한다. 1. [a, b, c] 2. [a, b, c, d] 3. [a, b, d] 4. [a, b] 1. a, b, c 를 포함하지만 다른 d는 포함하지 않는 다튜먼트를 찾고 싶을때 Model.find 에 별다른 옵션을 주지 않으면 된다. Model.find({ categories: req.body.searchCategories }, function (err, docs) { console.log(docs); // 정확히 categories가 a,b,c만 포함하는 것을 찾음 }); [a, b, c] 반환 [a, b] 반환 [a, b, c, d] 반환 x [a, b, d] 반환 x 2. a, b, c 를 모두 포함하는 것들을 모두 찾고 ..