2012-06-14 2 views
1

매우 빠른 질문입니다. 기본 함수가 두 개의 외래 키를 보유하고있는 테이블에 대한 용어가 있습니까? 예를 들어, user_id 및 group_id가 들어있는 "membership"테이블의 공식 용어가 user와 group 인 두 개의 테이블이 있습니까?두 개의 데이터베이스 테이블 연결

+0

공식적인 용어있다 - 교차로, crossreference (외부 참조), 링크,지도, 등 모든 동의어는 ... 2009 또는에서 SO 질문도 없다 2010에 대해. –

+0

감사합니다. 공식 용어로 테이블 이름을 읽기 쉽게 만들 수 있다고 생각했습니다. – Yitao

답변

3

다 대 다 관계를 지원하는 교차 테이블입니다.

+0

일반적으로 user_group_intersection 테이블의 이름을 지정 하시겠습니까? – Yitao

+4

나는 일반적으로 이름에 교차를 포함하지 않을 것입니다. user_group과 같은 것이 좋습니다. 또는 심지어 데이터베이스 이름 지정 규칙에 따라 UserGrouping 심지어 –

+0

그냥 나를 때리는 것으로 나타났습니다, 나는 ERD 하하를 그리기 전에 빠른 대답을 게시 했어야했습니다 – Dan

0

스테판 (Stefan)이 이미 답변했습니다 : 그러한 경우를위한 링크/inserection 테이블이 있습니다. 데이터베이스에 다른 가능성이 없으므로 다 대다 관계를 매핑합니다. 테이블 "UserGroup"과 기본 및 외래 키인 특정 ID에 대한 두 개의 열만 만들어야합니다.

1

many-to-many를 해결하는 연결/교차 테이블. 예를 들어 자동차에 둘 이상의 드라이버가 있고 드라이버에 둘 이상의 자동차가있을 수있는 경우 연결 테이블을 사용하여 다 대다 관계를 해결합니다. 나는 그림으로 OmniGraffle의 예 ERD를 그린 :

Example ERD

+0

table1_table2라는 이름에는 여러 가지 문제가있을 수 있습니다. 특히 복합 단어를 구성하는 테이블 이름이 의미가있는 경우에는 특히 그렇습니다. xref 또는 링크와 같은 이름으로 명확성을 선호하는 편이 좋을 것입니다. 그게 내 질문의 핵심 이었어. 그 점을 더 잘 설명해야합니다. – Yitao

+0

네, 분명히 당신에게 적합한 컨벤션을 고를 필요가 있습니다. 내가 가장 자주 본 표준 대회를 보여 줬지만 나는 다른 사람들을 분명히 보았습니다. – Dan

관련 문제