문제

작업중 인 응용 프로그램의 데이터 구조를 배치하기 위해 노력하고 있습니다. 처리해야 할 사항 중 하나는 고객 / 연락처 정보를 저장하는 것입니다. 주소록, Gmail 연락처 등과 같은 몇 가지 다른 연락처 정보 프로그램의 인터페이스를 연구했습니다.

나는 기본적으로 "엔터티"(개인, 회사, 역할 등)로 연락을 끓였다.

  • 실재 여러 가지 가질 수 있습니다 주소, 핸드폰, 이메일 항목.
    • 이들 각각은 "관계"(가정/직장/조수 등)를 정의합니다.
    • 실재 {1}-{관계}-> {0 ..*} 데이터
  • an 실재 여러 가지 가질 수 있습니다 필드 다른 "일반"데이터에 대한 자유형 데이터 저장소 (생일, 조준 계정 등)
    • 실재 {1}-{FieldName}-> {0 ..*} 현장 데이터
  • an 실재 다른 사람과 연결할 수 있습니다 실재 예를 들어 a 직원, 배우자
    • 실재 {0..} <-{relationshy}-> {0 ..} 실재

유사한 연락처 데이터베이스의 SQL 구현을 한 사람이 있습니까? 여기에서 스스로 프로젝트를 수행하려는 누군가와 공유 할 수있는 통찰력/제안/함정이 있습니까? 내가 묘사 한 것은 합리적이거나 복잡하게 보입니까?

한 가지 질문은 모두 같은 회사에서 일하는 4 명이 있다고 가정 해 봅시다. 그들은 모두 동일한 "작업"전화 번호 (아마도 다른 연장선이있는)를 가지고 있습니다. "작업"의 번호 나 주소가 변경되면 연락처를 상당히 쉽게 업데이트 할 수 있기를 원합니다. 이제이 중 많은 부분이 데이터베이스를 사용하는 방법에 따릅니다. 나는 이것이 직원을 해당 회사 엔티티에 연결하는 문제가된다고 생각하지만 주소/전화 번호는 더 이상 직원과 직접 연결되지 않습니다. 나는 여러 사람에게 동일한 우편 주소/전화 번호를 여러 사람에게 첨부 할 수있는 많은 사람들과 많은 사람들에게 실체/데이터 관계를 만드는 것에 대해 토론하고 있으며, 한 곳에서 업데이트하면 모든 장소에서 업데이트 할 수 있습니다. 나는 단지 이것을 생각하고 있습니까? 머리카락을 꺼냅니다

도움이 되었습니까?

해결책

약간의 명성이지만, 테이블을 생각하기 전에 데이터와 데이터를 알고 있어야합니다.

나는 보는 것이 좋습니다 객체 역할 모델링 (또는 이것 실제로 테이블을 구현하기 전에 모델을 일반 영어로 정의합니다. 이 vs 플러그인을 사용합니다. 노마 그것은 또한 당신을 위해 스키마를 생성 할 것입니다.

대안 적으로, 많은 것들이 있습니다 여기 데이터 모델 그것은 당신에게 영감을 줄 수 있습니다. 이것은 "연락처 관리"이지만 "고객"섹션과 같은 다른 것들이 있습니다.

(방금 이미지를 게시하고 싶었습니다 ..)Contact Management
(원천: databaseanswers.org)

다른 팁

이것은 단지 두 번째 질문을 돕기위한 것입니다. 전화 연장은 실제로 사람과 회사 단체의 관계에 속합니다.

contact_model_01

Microsoft는 자산 유지 관리, 연락처 관리, 고객 및 주문, 문서 관리, 전자 상거래, 헬프 데스크, 문제 추적 소프트웨어, 소매 재고 제어 및 제품 카탈로그를 포함한 여러 스타터 데이터베이스 스키마를 제공합니다. 보다 스타터 데이터베이스 스키마.


편집하다 (2016 년 4 월) : Microsoft Webmaster가 링크를 깨뜨린 것으로 보입니다. 여기에 있습니다 웨이 백 머신 아카이브 페이지의.

내 경험에서 자라는 경향이있는 몇 가지 요점 ..

상호 관계를 고려하십시오. 예를 들어, 누군가가 회사의 직원으로 정의 된 경우 회사는 정의상 그 사람의 고용주입니다.

주소를 자신의 실체로 간주하거나 사람/장소와 관련된 무료 텍스트로 간주하고 있습니까? 일부 응용 분야에서 주소 (물리적 건물 등)는 '실제'이며 테이블에는 하나만 존재할 수 있습니다. (종종 정부/우편 식별자 사용).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top