您好,欢迎访问三七文档
网上商城数据库分析,设计1.网上商城网上商城类似于现实世界当中的商店,差别是利用电子商务的各种手段,达成从买到卖的过程的虚拟商店,从而减少中间环节,消除运输成本和代理中间的差价,造就对普通消费,和加大市场流通带来巨大的发展空间。尽能的还消费者以利益,带动公司发展和企业腾飞,引导国民经济稳定快速发展,推动国内生产总值。在现如今的WEB2.0时代,新的产业在不断衍生,电子商务的兴起,为互联网创业者提供了更多的机会。本项目基于网上商城在现阶段及未来的发展而开发的电子商务应用,为消费者提供更好更快捷的服务,同时获得利润。2.参考项目项目的设计离不开原有的成功的项目以及别的公司的案例,例如淘宝网、亚马逊、当当网以及新发展起来的麦考林、凡客诚品等等,虽然经营的商品及模式不同,但是在技术上有很多的相同点。特别是在数据库的设计中,像用户信息表的设计,商品类别的设计,订单的设计等等,字段都是有很大程度上相同的,所以在实际的项目设计中可以参考这些成功的电子商务网站。3.数据库设计数据库设计(DatabaseDesign)是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建议中的核心技术。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最佳设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。4.数据库设计的重要性良好的数据库设计对于一个高性能的应用程序非常重要,就像一个空气动力装置对于一辆赛车的重要性一样。如果一辆汽车没有平滑的曲线,将会产生阻力从而变慢。关系没有经过优化,数据库无法尽可能高效地运行。应该把数据库的关系和性能看作是规范化的一部分。除了性能以外的问题,就是维护的问题了,数据库应该易于维护。这包括只存储数量有限的(如果有的话)重复性数据。如果有很多的重复性数据,并且这些数据的一个实例发生一次改变(例如,一个名字的改变),这个改变必须对所有的其他的数据都进行。为了避免重复,并且增强维护数据的能力,我们可以创建可能的值的一个表并使用一个键来引用该值。在这种方式中,如果值改变了名字,这个改变只在主表中发生一次,所有的其他表的引用都保持不变。提示:规范化指的是为了尽量避免重复性和不一致性而组织数据结构的过程。例如,假设你负责维护一个学生数据库以及他们所注册的课程。如果这些学生中的35个在同一个课堂中,让我们将这门课叫做AdvancedMath(高等数学),课程的名字将会在表中出现35次。现在,如果老师决定把这门课的名字改为MathematicsIV,我们必须修改35条记录以反映出新的课程名。如果数据库设计为课程名出现在一个表中,只有课程ID号码和学生记录一起存储,那么要更改课程名称,我们就只需要改变一条记录而不是35条记录。一个规划和设计良好的数据库的优点是众多的,它也证实了这样一个道理,前期做的工作越多,后面所要做的就越少。在使用数据库的应用程序公开发布之后,还要对数据库进行重新设计,这是最糟糕的,然而,这确实会发生,并且代价高昂。因此,在开始编写一个应用程序的代码之前,请花大量的时间来设计你的数据库。在本章其余的部分中,我们将学习很多有关关系和规范化的内容,这是设计难题中最重要的两部分。5.说明在一个完整的软件项目中,应该对需求分析,数据库设计,网页设计,JavaBean的设计等都是要精细考虑到的,由于时间及人力的关系,本次设计主要考虑数据库的设计,因为数据库设计的比较好,那么项目开发的进度也就比较快,可复用性也高,项目成功的几率就比较大。6.开发环境JDK版本:JDK1.6Web应用服务器:Tomcat7.0及以上数据库:MySQL5.0及以上展示层:Struts2及以上业务层:Spring2.5及以上持久层:Hibernate3.0及以上7.数据库表在MySQLWorkbench中设计总的数据库表7.1用户注册信息表(user)User字段名字段类型说明idint主键usernamevarchar用户名passwordvarchar密码password2varchar确认密码emailvarchar邮件phonevarchar电话图片管理的表商品的详细信息表每个表里面都有不同的尺码什么的!7.2商品信息表(product)product字段名字段类型说明idint主键namevarchar商品名descvarchar描述normalpricedouble正常价格memberpricedouble会员价格pdatedate上柜日期categoryIDvarchar类别,引用category表的ID7.3商品信息类别表(category)category字段名字段类型说明idint主键namevarchar商品名descvarchar描述7.4订单表(salesorder)salesorder字段名字段类型说明idint主键useridint参照用户idaddrvarchar送货地址salesitemint参照salesitem的idodatedate下单时间7.4订单详细表(salesitem)salesitem字段名字段类型说明idint主键productidint参照product的idunitpricedouble单价pcountint数量orderidint参照订单表的id7.6购物车表(shoppingcart)shoppingcart字段名字段类型说明idint主键useridint参照user的idcartitemvarchar参照cartitem的id7.7购物车明细表(cartitem)cartitem字段名字段类型说明idint主键productidint参照product的idutilpricedouble单价pcountint数量7.8管理员表(admin)admin字段名字段类型说明idint主键usernamevarchar管理员姓名passwordvarchar密码levelvarchar级别地址管理表8.0SQL语句SET@OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS,UNIQUE_CHECKS=0;SET@OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS,FOREIGN_KEY_CHECKS=0;SET@OLD_SQL_MODE=@@SQL_MODE,SQL_MODE='TRADITIONAL';CREATESCHEMAIFNOTEXISTS`mydb`DEFAULTCHARACTERSETlatin1COLLATElatin1_swedish_ci;CREATESCHEMAIFNOTEXISTS`new_schema1`;USE`mydb`;---------------------------------------------------------Table`mydb`.`user`-------------------------------------------------------CREATETABLEIFNOTEXISTS`mydb`.`user`(`id`INTNOTNULLAUTO_INCREMENT,`username`VARCHAR(45)NOTNULLCOMMENT'用户名',`password`VARCHAR(45)NOTNULLCOMMENT'密码',`password2`VARCHAR(45)NOTNULLCOMMENT'确认密码',`email`VARCHAR(45)NOTNULLCOMMENT'电子邮件',`phone`VARCHAR(45)NOTNULLCOMMENT'电话',`shoppingcart_id1`INTNOTNULL,PRIMARYKEY(`id`,`username`,`shoppingcart_id1`))ENGINE=InnoDBCOMMENT='用户注册表';---------------------------------------------------------Table`mydb`.`category`-------------------------------------------------------CREATETABLEIFNOTEXISTS`mydb`.`category`(`id`INTNOTNULLAUTO_INCREMENTCOMMENT'主键',`name`VARCHAR(45)NOTNULLCOMMENT'商品名字',`desc`VARCHAR(200)NOTNULLCOMMENT'描述',PRIMARYKEY(`id`))ENGINE=InnoDB,COMMENT='商品类别信息表';---------------------------------------------------------Table`mydb`.`product`-------------------------------------------------------CREATETABLEIFNOTEXISTS`mydb`.`product`(`id`INTNOTNULLAUTO_INCREMENTCOMMENT'主键',`name`VARCHAR(45)NOTNULLCOMMENT'产品名字',`desc`VARCHAR(200)NOTNULLCOMMENT'产品描述',`normalprice`DOUBLENOTNULLCOMMENT'正常价格',`memberprice`DOUBLENOTNULLCOMMENT'会员价格',`pdate`DATENOTNULLCOMMENT'上柜日期',`category`VARCHAR(45)NOTNULLCOMMENT'类别ID',PRIMARYKEY(`id`),INDEX`category`(),CONSTRAINT`category`FOREIGNKEY()REFERENCES`mydb`.`category`()ONDELETENOACTIONONUPDATENOACTION)ENGINE=InnoDB,COMMENT='产品信息表';---------------------------------------------------------Table`mydb`.`salesorder`-------------------------------------------------------CREATETABLEIFNOTEXISTS`mydb`.`salesorder`(`id`INTNOTNULLAUTO_INCREMENTCOMMENT'主键',`userid`INTNOTNULLCOMMENT'用户ID',`addr`VARCHAR(45)NOTNULLCOMMENT'配送地址',`salesitem`VARCHAR(45)NOTNULLCOMMENT'订单明细',`odate`DATENOTNULLCOMMENT'下单日期',PRIMARYKEY(`id`))ENGINE=InnoDB,COMMENT='订单表';---------------------------------------------------------Table`mydb`.`salesitem`-------------------------------------------------------CREATETABLEIFNOTEXISTS`mydb`.`salesitem`(`id`INTNOTNULLAUTO_INCREMENTCOMMENT'主键',`productid`INTNOTNULLCOMMENT'产品ID',`unitprice`DOUBLENOTNULLCOMMENT'单价'
本文标题:网上商城数据库分析
链接地址:https://www.777doc.com/doc-4715263 .html