一个数据库设计上的问题,了解的请进来一下

离子漂浮物 2008-11-22 10:12:43
每个分类下有许多商品,
每个商品下有许多价格,
现在有个表,需要人工指定一批价格并记录指定的时间

然后作个页面列出价格,商品名,商品分类,指定时间这几个参数。

以我现在的库作出这个页面需要联合查询四个表(类别,商品,价格,被指定的价格编号列表)

有什么办法能减少库的数量呢...
...全文
162 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
hubofly 2008-11-24
  • 打赏
  • 举报
回复
每个分类下有许多商品,
每个商品下有许多价格,
现在有个表,需要人工指定一批价格并记录指定的时间

然后作个页面列出价格,商品名,商品分类,指定时间这几个参数。


每个分类有很多商品 你肯定可以搞定的

每个商品有很多价格 可能你会搞出问题来 ,我有个解决方法,就是有一张商品价格表,所有的价格都在这个表里面
这个表有最少三个字段 productid price flag(bool) productid 就是商品的ID price 商品的价格 flag 该价格是否当前使用 此时 ,如果商品有三个价格 那么 该表里面就有三条记录 但是 flag 有个标志位true false ,控制每种商品的价格 只有一个标志位为true的,其余为false ,以后如果修改商品价格,只是修改flag的true false
踏平扶桑 2008-11-24
  • 打赏
  • 举报
回复
可以用视图来生成一个表
查询数据从视图里进行查询。
dermotfly2010 2008-11-24
  • 打赏
  • 举报
回复
用视图最简单了,加入你所需要的字段
在数据绑定的时候, 直接绑定建的视图
离子漂浮物 2008-11-24
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 5653325 的回复:]
可以用视图来生成一个表
查询数据从视图里进行查询。
[/Quote]

嗯,就用这个方法了。
离子漂浮物 2008-11-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 hubofly 的回复:]
每个分类下有许多商品,
每个商品下有许多价格,
现在有个表,需要人工指定一批价格并记录指定的时间

然后作个页面列出价格,商品名,商品分类,指定时间这几个参数。


每个分类有很多商品 你肯定可以搞定的

每个商品有很多价格 可能你会搞出问题来 ,我有个解决方法,就是有一张商品价格表,所有的价格都在这个表里面
这个表有最少三个字段 productid price flag(bool) productid 就是商品的ID price 商品…
[/Quote]


啊,谢谢,关于价格表方面还是好处理的,一个商品多个价格,每个价格都是要用的,至于用哪个价格,这个是由用户决定的。
现主要还是实现最后说的那个人工指定的价格列表。

现在我的实现方式暂定为六楼说的那样,在指定价格表内作一套复制字段,在更新相关字段时同步这个表的内容。不好的地方就是,如果列表需要添加显示内容的话就要修改表结构和程序了。
chinaxc 2008-11-24
  • 打赏
  • 举报
回复
顶9楼
pinyu 2008-11-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 BlueskyWide 的回复:]
SQL codet_product表:
p_type, --商品类别
p_name, --商品名称
price_old, --原价
price, --价格
p_time, --定价时间
p_count --数量




引用楼主 oyiboy 的帖子:
每个分类下有许多商品,
每个商品下有许多价格,
现在有个表,需要人工指定一批价格并记录指定的时间

然后作个页面列出价格,商品名,商品分类,指定时间这几个参数。

以我现在的库作出这个页面需要联合查询四…
[/Quote]

你的这个表还没解决规范化的问题,因为商品名称和价格,定价时间是一对多的关系,必须拆分成2个表
BlueskyWide 2008-11-23
  • 打赏
  • 举报
回复
t_product表:
p_type, --商品类别
p_name, --商品名称
price_old, --原价
price, --价格
p_time, --定价时间
p_count --数量





[Quote=引用楼主 oyiboy 的帖子:]
每个分类下有许多商品,
每个商品下有许多价格,
现在有个表,需要人工指定一批价格并记录指定的时间

然后作个页面列出价格,商品名,商品分类,指定时间这几个参数。

以我现在的库作出这个页面需要联合查询四个表(类别,商品,价格,被指定的价格编号列表)

有什么办法能减少库的数量呢...
[/Quote]
离子漂浮物 2008-11-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 BlueskyWide 的回复:]
SQL codet_product表:
p_type, --商品类别
p_name, --商品名称
price_old, --原价
price, --价格
p_time, --定价时间
p_count --数量




引用楼主 oyiboy 的帖子:
每个分类下有许多商品,
每个商品下有许多价格,
现在有个表,需要人工指定一批价格并记录指定的时间

然后作个页面列出价格,商品名,商品分类,指定时间这几个参数。

以我现在的库作出这个页面需要联合查询四…
[/Quote]

你的意思就是说,在最后的那个指定表里将有显示的内容复制一份,在显示时不需要联合查询,但在更新相关内容时需要同步更新。是这样吗?
pinyu 2008-11-22
  • 打赏
  • 举报
回复
其实你这个就是涉及到数据库设计中的规范化问题
pinyu 2008-11-22
  • 打赏
  • 举报
回复
还是用中文吧


即表一:
类别编号,类别名称

表二
商品编号,类别编号,商品名称

表三
记录号,商品编号,价格,时间
怫悰 2008-11-22
  • 打赏
  • 举报
回复
冒泡帮顶接分

对于数据库的效率也是有很多疑问
什么范式啦,到底怎样最好?
pinyu 2008-11-22
  • 打赏
  • 举报
回复
ClassID ClassName


SPID SPNAME CLASSID


ID SPID PRICE TIME
5Br 2008-11-22
  • 打赏
  • 举报
回复
最后一个价格编号列表不知道什么
这么看的话类别,商品,价格一个也不能少

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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