关于分表与表内数据结构划分的问题
请教高手几个问题,谢谢:
我在研究一个某地分类信息的项目,在对表的数据结构划分方面有一些困惑。
譬如分类信息中有一级大类
1.二手物品 2.招聘求职........n.生活服务
如"二手物品"又可分如下2级分类:
1.家具 2.数码 3.办公 4.文件.............20.服装
每个二级分类下面还有一些不同工种属性(可算3级分类吧),如“家具”类下还要选“桌子、衣柜、电视柜、椅子”
而且这些3级分类是可多选的,譬如某人发布信息,转让家具,可能既有桌子,也有椅子,即“桌子|椅子”
现在面临两种选择:
A) 将家具、数码、办公这些二级类别共用一个数据表,用表中的一个字段“xxx”来存放3级分类
如“xxx”字段中可能存放的数据是“桌子|衣柜”,也可能是“相机/电视机”
B) 针对每一个二级分类如家具、数码都建一个独立的数据表。针对这种方案,又有两种选择:
<B1> 在“家具”数据表中,仍将“桌子、衣柜、电视柜、椅子”等属性一并放在一个“xxx”字段中
<B2> 在家具数据表中,添加“桌子”字段、“衣柜”字段.......
问题一:
请问哪一种方案好一些?如果是B方案,那么 将 桌子 衣柜 这些是分别建立一个字段,还是合并写在一个字段中好?
用户进行信息搜索时,譬如搜索“桌子”类信息,用“桌子|衣柜|电视柜”这种组合存放在同一字段的效率与分别建立字段的
效率会差很多吗?
问题二,属附带问题:
一个数据库中存在几十甚至上百个表格,对系统会有什么负面影响吗?
SQL中建立全文索引,对中文信息有用吗?全文索引是通过对全文抽取大量的“关键词”来建立索引的吗?