组织MySQL数据库

max*_*son 5 mysql database organization

我正在开发一个应用程序,需要我创建我的第一个大型MySQL数据库.我目前正在艰难地围绕组织它的最佳方式.任何人都可以推荐任何阅读材料,以显示不同的方式组织MySQL数据库用于不同的目的吗?

我不想尝试深入了解我想象数据库的主要组件的细节,因为我不能确信我能够清楚地表达它,以便在这一点上有所帮助.这就是为什么我只是在寻找MySQL数据库组织的一些常规资源.

Lia*_*son 6

我学会了解决这些问题的方法是停止并建立联想.

在更多面向对象的语言(我假设你正在使用PHP?)强制OO,你学会很快地想到OO,这就是你在这里所追求的.

我的工作流程是这样的:

  1. 找出您需要存储的数据.(客户名称等)
  2. 找出您正在使用的主要对象(例如,客户,订单,销售人员等),并为每个对象分配一个密钥(例如,客户ID).
  3. 确定哪些数据连接到哪些对象.(客户名称属于客户)
  4. 确定主要对象如何相互连接(销售人员向客户出售订单)

一旦你拥有了这些,你就拥有了一个很好的对象模型.下一步是查看连接.例如:

  • 每个客户只有一个名字.
  • 每种产品都可以多次出售给任何人
  • 每个订单只有一个销售人员和一个客户.

一旦你完成了这项工作,你就想尝试一种称为规范化的东西,这是将这些数据集合放入表格列表的艺术,仍然可以最大限度地减少冗余.(这个想法是,一对一(客户名称)存储在具有客户ID的表中,多对一,一对多,多对多存储在具有特定规则的单独表中)

这就是它的要点,如果你要求它,我会从你的工作流程中为你扫描一个示例表.