一个数据库设计的简单问题

jonescheng 2003-08-20 02:08:59
问题是这样的:比如说一顶帽子我会按如下分类来存储它
纺杂->帽子->棒球帽

当我设计数据库的时候,我把分类存放在三张表中。
产品表中我只放最小的分类(比如棒球帽)
但是如果这时要查询纺杂所有的产品。我就要根据
球球帽子这个分类往上查询出他的最大的分类。
我觉得写程序是很麻烦

有没有很好的解决办法。。。。

...全文
44 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
maoyesky 2003-08-23
  • 打赏
  • 举报
回复
用一張表解決比較方便,比較好維護。
cqs76 2003-08-23
  • 打赏
  • 举报
回复
有三层:
第一层:1 (X)
第二层:11 (XX) 第一层的数字为第二层的start
第 三层:111 (XXX) 第二层的数字为第三层的start


以此类推
jonescheng 2003-08-23
  • 打赏
  • 举报
回复
是这样阿。
然后在产品表中引用Tab3k中的棒球帽
但是如果我想查找所以纺杂产品的信息呢?
我该怎么办。我用的是子查询的方式。但是
我觉得效力太差了
_weiKun_ 2003-08-23
  • 打赏
  • 举报
回复
一章可以解决问题,设计一个有代码的树行结构,即可,可以和我联系wk2003@tom.com
webswim 2003-08-22
  • 打赏
  • 举报
回复
我觉得可以这样做:
Tab1 : Tab1_ID + 纺杂信息
Tab2 : Tab2_ID + Tab1_ID + 帽子信息
Tab3 : Tab3_ID + Tab2_ID + Tab1_ID + 棒球帽信息

ID最好用整数
每张表第一个字段是关键字!
tanys 2003-08-22
  • 打赏
  • 举报
回复
可以在下级表加入上级的ID
jonescheng 2003-08-22
  • 打赏
  • 举报
回复
但是我的类有三层。这样的话就存在大量的重复数据。。
所以我把类别放在三个表中。减少重复的数目
有没有更好的办法呢???
sowhat0000 2003-08-21
  • 打赏
  • 举报
回复
关注
xiaodian2003 2003-08-21
  • 打赏
  • 举报
回复
一张表可以解决问题:
产品编号 父接点 产品属性1 产品属性2
1 0 纺杂
2 1 帽子
3 1 棒球帽
4 0 灯
5 4 节能灯
luoyewuhen 2003-08-20
  • 打赏
  • 举报
回复
菜鸟经过,关注这个问题,只是我不明白你说把分类存在三个表中是什么意思
hjb111 2003-08-20
  • 打赏
  • 举报
回复
放在一张表中用分类id号来区分就可以了!
CrazyFor 2003-08-20
  • 打赏
  • 举报
回复
设计树型分类目录.

http://expert.csdn.net/Expert/topic/1375/1375432.xml?temp=.8570978
CrazyFor 2003-08-20
  • 打赏
  • 举报
回复
设计树型分类目录.

http://expert.csdn.net/Expert/topic/1375/1375432.xml?temp=.8570978

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧