我一直在工作上铺设了数据结构的一个应用程序,我的工作。有一件事它将需要处理的是储存的客户/联系的信息。我已经研究界的几个不同的联系人信息的程序,如地址簿、主题联系人等。

我已经基本上煮接触下来一个"实体"(个人、公司、作用,等等)。

  • 实体 可以有多种 地址, 电话, 电子邮件 项。
    • 这些定义一个"关系"(家庭/工作/助理,等等)
    • 实体 {1}--{的关系}-->{0..*} 数据
  • 一个 实体 可以有多种 这是自由式数据存储于其他的"通用"的数据(生日,目的账户,等等)
    • 实体 {1}--{fieldName}-->{0..*} 现场数据
  • 一个 实体 可以链接到另一个 实体 例如,作为一个 雇员, 配偶
    • 实体 {0..} <--{的关系}-->{0..} 实体

有没有人做过任何SQL实现的类似的联系人数据库?任何见解/建议/缺陷,以避免的,你可以分享有人想工作上的一个项目,通过自己在这里?没什么,我所描述的似乎是合理的或过于复杂?

一个问题,可以说,你有4人有工作,为同一家公司。他们都有相同"工作"的电话号码(也许用一个不同的扩展)-如果号码或地址为"工作"的变化,我想要能够更新联系人相当容易。现在很多这下来你将如何使用该数据库。我想,这成为一个问题的联名雇员向其各自的公司实体,但随后的地址、电话号码,不再直接相连的雇员。我是那种辩论作出的实体/数据的关系,许多许多许你附上相同的邮寄地址、电话号码多个人,并更新在一个地方可以更新它在所有地方。我只是在想这个? 拉出来的头发

有帮助吗?

解决方案

这是一个有点陈词滥调,但是你需要知道你的数据和什么你要用它做之前你开始想表。

我建议你看看 对象的作用的建模 (或 太)来定义的模式在普通的英文之前你真正实施任何表。我用这个VS的插件: 诺玛 这也将产生一个架构太多。

另外,还有一堆 数据模型在这里 这可能会激发你。这是"接管",但也有其他人,例如"客户"部分

(我只是想发表一个图像。。) Contact Management
(资料来源: databaseanswers.org)

其他提示

这只是来帮助你的第二个问题;在电话分机实际上属关系的个人和公司实体。

contact_model_01

Microsoft提供一些启动数据库架构,包括资产维护、联络管理、客户和订单、文件管理、电子商务、帮助台,问题追踪软件、零售库存控制、和产品目录。看看 启动器的数据库模式.


编辑 (四月2016年):它出现微软网站管理员的打破了链接。这里的 韦巴克机档案 该网页。

几点,往往会出现在我的体验。

考虑相互关系。例如,如果某人被定义为一名员工的公司,那么公司是那么按定义所述的雇主的那个人。

你考虑到地址作为实体本身,或者作为仅仅是免费的文字与一个人/地方吗?在某些应用中,地址(实物建筑等)是'真正的'和只有一个可以存在于表。(往往利用政府/邮政标识符)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top