SQL Server数据库设计,哪个更好设计

时间:2014-04-18 08:17:03

标签: sql sql-server

我正在学习SQL Server,我对是否应该将CityStateCountry放在一个表中或者是否应该使用外键创建3个不同的表感到困惑?

enter image description here enter image description here

请建议哪一个最适合表现和未来的修改等。

3 个答案:

答案 0 :(得分:2)

第二个更好,根据经验,我总是说如果我需要重命名'country'名称应该更新多少记录,如果你的答案是1,那么你的设计是好的。 (在第一个设计中,应该更新的记录数量与该数量的城市数量一样多)

答案 1 :(得分:1)

第二个,标准化的,当然更好。

但是,如果城市依赖于国家而且只是间接地依赖于国家,那么你在城市表中不需要CountryId。

答案 2 :(得分:1)

您的第二个数据库设计更好,因为它满足NORMALIZATION