![]() |
1
2
你的关键决定因素是 normalization 是必需的。即使您只是使用应用程序添加数据,您仍然需要处理异常情况,例如,如果某人的电话号码更改,并且他们在应用程序的生命周期中插入多行,会发生什么情况?哪一行包含正确的电话号码? 举个例子,你可能会发现 repeating groups 在您的数据中,就像一个人拥有多个电话号码一样;与其有三列名为“phone1”、“phone2”、“phone3”,不如将这些数据分解到自己的表中。 在标准化过程中还有其他问题,例如传递的或非关键的依赖关系。这些概念将有希望引导您在没有 modification anomalies ,正如你所希望的那样! |
![]() |
2
4
我要三张桌子:
|
![]() |
3
1
脉冲群解是一个很好的方法。 您不想为每个产品解决方案使用一个表,因为在插入或删除产品时,不必更改数据库的结构。只应插入或删除一个或多个表的行,而不应插入或删除表本身。 |
![]() |
4
1
虽然这可能是必要的,但对于像产品列表这样简单的东西,有这么多字段在我看来,你可能有一个有缺陷的设计。
您需要分析潜在的表结构,以确保每个字段包含的信息不超过一条(例如,单个字段中的“2个锤子,500个钉子”不正确),并且每个信息不超过一个字段(例如,具有
|
![]() |
Community wiki · SQL语法新手 1 年前 |
|
KateMak · 是否将多行中的多列与唯一id组合? 1 年前 |
![]() |
Karuna · SQL中列内的筛选器[重复] 1 年前 |
![]() |
Irvan Affandy · 为另一个选择选择声明的键 1 年前 |
![]() |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
![]() |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |