Q
数据库表格设计
0
A
回答
2
在这种情况下,城市查找表是有意义的。
如果需要,这也将允许您在未来为每个城市添加更多信息。
0
是的。标准化数据库模式通常是一种最佳做法,这样您就不会在属性列表中的多个房产列表记录中重复相同的城市名称。
有些情况下,您会因性能原因想要进行非规范化处理。在证明它本身不变的情况下,我不会认为你的情况是这种情况之一(即表读取变得非常缓慢)。即使如此,在对模式进行非规范化之前,仍然可以进行优化。
2
如果每个属性只有一个城市,将其放入属性表中并没有什么大错。如果还有更多,则除了使用城市表格外,没有什么好的选择。
或者,如果您想从下拉列表中选择城市并且不允许添加任何内容,则拥有城市列表可能是个好主意。如果你这样做,那么你可能希望将cityid而不是城市名称存储在属性表中。这样当有人改变一个城市的名字(这可能不会经常发生),你只需要改变一个记录。当然,如果你有一个城市表,你必须有一个外键,并确保city_id在属性表中编入索引,以保持数据的完整性。
+0
谢谢。这帮助了很多 – hanumanDev 2011-03-02 23:40:51
相关问题
- 1. 数据库表格设计
- 2. 数据库设计 - 表格标准化
- 3. 数据库表格设计控件
- 4. 关于数据库表格设计
- 5. 价格数据的数据库设计
- 6. 数据库表设计
- 7. 数据库表设计
- 8. 数据库表设计
- 9. Mysql数据库表设计
- 10. 设计数据库:表
- 11. 针对大量数据优化数据库表格设计
- 12. 数据库设计:将数据从纸质表格存储到数据库中
- 13. 数据库表设计/设置
- 14. 数据库设计 - 配置/设置表
- 15. 如何设置数据库表,数据库设计
- 16. 数百个表的数据库设计
- 17. 数据库设计
- 18. 数据库设计
- 19. 数据库设计
- 20. 数据库设计
- 21. 设计数据库
- 22. 设计数据库
- 23. 数据库设计
- 24. 数据库设计
- 25. 数据库设计
- 26. 库存数据库设计
- 27. 数据库设计中的外键 - 数据库设计
- 28. 为删除的数据设计表格
- 29. 时空数据表格设计
- 30. 问题与表格的布局(数据库设计)
把城市放在自己的桌子上与正常化没有任何关系。不这样做与反规范化无关。这并不一定会使事情正确或错误 - 但你应该清楚理由是什么。没有迹象表明OP的模式尚未正常化。 – sqlvogel 2011-03-02 17:23:29
@dportas诚然,如果我的回答包含了规范化和非规范化模式的例子,我的回答会更好地服务于这个问题,表明我认为他在问他应该使用哪一个。 – 2011-03-03 19:14:06