楼上说的很对,我们需求都没有搞清楚,设计数据库来会有些吃力呀!不过我可以给你点建意就是:1\购买方式 Payment你用的是Int,完全可以用char(1)
2\订单表与订单详细信息可以完全在一张表里,不知道你有什么特殊的需求
2\订单表与订单详细信息可以完全在一张表里,不知道你有什么特殊的需求
解决方案 »
- SSH框架搭建
- 对bean进行setProperty却不执行,为什么?
- cxf权限拦截
- 关于反射后的类型转换。有高手吗?难道没人能搞定?
- 关于Struts2返回Json数据的正则表达式的配置问题。
- action向dao层传参的时候,是因为传属性值呢还是该传实体类对象?
- 在JSP 中用什么能做出级联菜单啊?javabean可以么?来者有分?
- 一个rmi的问题!(在线等待。。。)
- 《精通EJB》(第二版)
- getHibernateTemplate() 操作数据库事务回滚不了,求救。
- 为什么imort java.swing.JTextField中不能输入汉字
- 一次性插入十万条记录,如何控制在1秒之内?
一个订单可以有多本书,从设计原则上,当然要做成主从表结构。
2 图书分类编号
建议用varchar,他们不一定是数字的
3 图书名
字段长度有点短了,至少弄到50/100
4 图书单价
精度应该是2位,到分。
5 订单详细信息
最好增加书籍价格作为历史。 曾发现某些书的定价被重新粘贴过,也就是价格有可能变动。 6 建议你在订单或订单明细上增加打折属性。作为历史数据备查。
我以前有个类似系统,这个字段叫用户名称,另还有一联系人字段,用来存放用户名信息把打折信息也反映上来,这是中国特色,有可能是一本书有打折,可能是满多少金额打折,多满多打,还有可能用VIP积分换,还有对不同客户...... 虽然现在没有需求,也要考虑以后的扩展
一个订单可以有多本书,从设计原则上,当然要做成主从表结构。 本人表示赞同!你的建议我接受
总体设计成3个表是没什么问题的,也不存在严重的数据冗余,有两个细节要注意下:
1、表与表之间的关联不要用有实际意义的栏位来关联,建议每个表建一个主id(主键),关联id(外键),用来表示表与表之间的关联
2、订单编号等什么的类型改成varchar2(..),购买方式varchar2(1),订购数量integer,购买时间date
回答不容易啊,多给点分