简体   繁体   English

“实际上”足够的数据库规范化水平是多少?

[英]What is the level of database normalization that is “practically” enough?

I am designing a database and I reached (as per my little knowledge) the Third Normal Form (3NF)我正在设计一个数据库,并且我达到了(据我所知)第三范式(3NF)

Some of my colleagues told me about a Sixth Normal Form .!我的一些同事告诉我关于第六范式。! I was wondering how to know if the level of normalization of database is enough.我想知道如何知道数据库的规范化水平是否足够。

In my experience, it's pretty rare to hear anyone talk about going beyond 3NF for real-world production applications.以我的经验,很少听到有人谈论超越 3NF 用于实际生产应用程序。 That should be sufficient for nearly all cases.对于几乎所有情况,这应该足够了。

Normally 3NF good enough, but it really depends on your requirements.通常 3NF 就足够了,但这确实取决于您的要求。 Be practical in your design.在你的设计中要实用。

I usually optimize my DBs up to 3 NF.我通常将我的数据库优化到 3 NF。 Usually, it is enough.通常,这就足够了。

Practically - it depends on your needs.实际上 - 这取决于您的需求。 For small and quick applications, you are happy with 1NF.. even 0NF, since you don't care.对于小型和快速的应用程序,您对 1NF.. 甚至 0NF 感到满意,因为您不在乎。

As much as application grows, you need datastructure optimizations.随着应用程序的增长,您需要数据结构优化。

If you are trying to-do some upfront desing keep 3NF as major.如果您正在尝试做一些前期设计,请保持 3NF 为主要。

Aim to be in 5NF unless you find good reasons to deviate from that.除非你找到充分的理由偏离它,否则目标是进入 5NF。 6NF should only be applied in special cases because in most cases in most DBMSs you won't be able to implement all important dependencies under 6NF. 6NF 应该只在特殊情况下应用,因为在大多数情况下,在大多数 DBMS 中,您将无法在 6NF 下实现所有重要的依赖项。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM