Code Bye

一个关于数据库设计的问题-

想做一个相似如下的东西
xx小区–a区–a3栋–1单元–5楼–505
那么这种结构就用
选小区–选区域–选楼房–选单元–选楼层–选房号
那么问题来了
xx小区–b18座–2211房
这样的话就尴尬了
本人目前想法是这样的
表1   存储选取的各层次数据如   (真实设计肯定会用id代替小区)
id    小区        层次名
1    xx小区     区域
2    xx小区     楼房
3    xx小区     单元
4    xx小区     楼层
5    xx小区     房号
表2  存储每个小区的房源  如
id   小区          层1       层2       层3 …(10层)
1    xx小区     a区       a3栋       3单元…
2   xx小区2    b10座  1101
3   xx小区3   …    …
这样设计用起来挺麻烦。各位大哥大姐  有没有好点的方法或思路。
谢谢。
解决方案

200

动态的可以参考menu的方式,即id,parentid的方式,每条记录包含自身是什么类型,这样一旦层次发生变化,你不需要动表结构,而且组织成一个地址也有一定的复杂度
当然你这种方式的话,原因是格式固定,查询什么的都很简单,坏处就是一旦层次变动,你整个代码、数据库都要跟着动
实际当然看你业务,假如你的楼房层次就这样,不会发生变动,那么你这种方式可以接受,编码工作量也会小很多

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明一个关于数据库设计的问题-