数据库设计中的主要观点是什么?

时间:2011-07-22 11:28:08

标签: database

我正在重构/重建我的旧商店系统,并想知道在这个发展阶段我应该注意哪些主要方面。我以前的系统是一个废话,所以实际上我认为更多的新系统是一个全新的,而不是重构的旧系统。

现在到了这一点。如果有人能够向我解释这个部分而不管它(系统)未来的主题。它是商店还是博客等。是否有任何主要标准,应该高度重视?

谢谢大家的帮忙?希望这个问题不太抽象。

2 个答案:

答案 0 :(得分:2)

以下是您应该考虑的10个高级别事项,以便开始,没有特别的顺序:

  1. 标准化(第三范式可能就足够了)
  2. 对象的一致和标准命名
  3. 正确使用外键
  4. 决定使用主键的内容(是否要使用人工值,例如整数ID值?)
  5. 正确使用索引,并在必要时适当使用覆盖索引。小心避免重复/冗余/重叠索引。
  6. 仔细考虑是否要使用触发器(如果可能,最好避免使用触发器)。
  7. 要非常小心调用标量值UDF的视图和表值UDF。如果你不注意你正在做的事情,这可以让你陷入麻烦,表现明智。
  8. 您希望数据库中的业务逻辑与应用程序代码(例如C#,Java等)的程度有多大。这包括使用检查约束。
  9. 为存储过程,UDF,触发器等提供一致的注释/文档架构。
  10. 您是否需要跟踪谁进行了插入/更新/删除?这可以在模式中支持几种不同的方式,一些非常差的IMO(例如在每个表中保留DeletedFlag列)。

答案 1 :(得分:1)

对于初学者,我建议数据库许可证,托管,预期带宽(查询)要求的成本,要存储的数据的预期类型/数量,考虑如何查询数据库(本地或Web) - 最终内部或面向客户,即毫秒性能至关重要。