1、摘 要销售管理子系统是一个B2C模式以网上零售为主在线购物系统,采取三层架构B/S开发技术,数据库选择了Microsoft SQL Server ,并利用了现在流行WEB开发技术JSP,经过JavaBean和JSTL使用,实现了前台商品展示、购物车、留言板;后台商品管理、订单处理、单据生成等关键功效。将业务模型最终以程序形式实现,从而使得该系统能充足满足基于B2C模式网上销售系统需要。使用该软件既能够对企业内部库存、采购和用户关系等部门实施电子化管理;也能够经过互联网,在线进行商品销售和结算管理。该系统能够顺畅企业内部信息流,为企业开拓了含有巨大潜力网上销售市场,也降低企业内部工作步骤,进而提
2、升工作效率和工作质量,使企业在猛烈市场竞争中取得竞争优势。本文关键对网上销售系统进行总体设计,并对销售管理子系统进行系统分析、系统设计、系统实现和系统测试。关键词:B2C;购物车;JavaBean;订单处理AbstractSales management subsystem technically is a B2C online sale system, main function of which is to promote online retail activities of a business. The system adopts a three-tier architecture
3、B/S development technology. Background database of the system adopts the Microsoft SQL Server . By using JavaBean and JSTL (Java Server Pages Standard Tag Library) of JSP (Java Server Page) technology, the system integrates many practical functions, which includes Foreground Item Display, Shopping C
4、art, Feedback Board, Inventory Management, Order Processing, and Bill Generation etc. The real business mode finally is embodied in form of computer program. Therefore, the system can fully meet requirements of a B2C online sale mode.With the system businesses can realize the informative management
5、in aspects of inventory, procurement and customer relationship, as well as can handle the online sales process and settlement via internet. The system can help businesses to facilitate their internal information flow and develop potential e-market, as well as simplify business process and improve wo
6、rk efficiency and quality. It will bring competitive edge to businesses.The paper presents a general design of the online sales system, and particularly, presents the detailed system analysis, system design, system implementation and system test of the Sales Management Module.Key words: B2C; Shoppin
7、g vehicle; JavaBean; Dispose the order forms目 录第1章 绪 论11.1 设计构想11.2 开发工具选择11.3 开发方案选择21.4 开发方法4第2章 可行性研究72.1 技术可行性72.2 经济可行性72.3 操作可行性82.4 其它方面可行性8第3章 需求分析93.1 系统需求分析93.2 业务步骤93.3 数据步骤103.4数据字典14第4章 数据库设计184.1 数据库设计总述184.2 概念设计194.3 逻辑设计204.4 物理设计214.4.1 设计原理214.4.2 设计方案224.5 数据库实现224.6 数据库安全性设计26第5
8、章 系统设计275.1 系统设计标准275.2 系统功效结构设计27第6章 系统实现316.1 系统界面实现316.2 用户和管理员登陆实现336.3 商品管理实现346.4 商品浏览和查询实现366.5 订单处理实现426.6 留言板实现44第7章 系统测试467.1 测试任务及目标467.2 测试方法467.3 测试过程和结果分析48第8章 结 论50参考文件51致 谢52附 录53第1章 绪 论1.1 设计构想本文所要设计购物系统关键针对对象是建材。将建筑材料和家居用具进行网上销售,这对于现在中国建材市场来说算是一个全新尝试建筑制品和建材产品多有明确国家标准和部颁标准,适合网上销售。且基
9、础建设市场需求量教大,中国家居装修和产品出口市场也很宽广。目前中国建材商品网,中国装饰材料网,中国水泥网,鲁班网络等建筑、建材网站,已形成多品种、广覆盖。纵横交错网络格局,近一步完善了建材家族网络体系。尤其是智能化房屋网站,把信息化技术贴紧百姓生活,受到了大家欢迎。 目前问题是:因为基础建设单位流动性大,上网者少,缺乏用户群;部分出口产品缺乏ISO 9001质量认证; 已实施网上采购单位,缺乏对应配套要求。如各地普遍实施建材产品准入制度,要求材质单必需加盖红章,所以无红章单证效力问题,和原有要求发生了碰撞,阻碍了产品销售。加上装饰建材销售受虚假广告宣传影响,坏了名声,大家不敢轻易相信送上门来是
10、正品。 新型建材,市场潜力很大。目前关键是缺乏市场气氛。已经有科普网站,尚缺乏市场化运作。既影响了销售,又丢掉了市场。1.2 开发工具选择 1.什么是EclipseEclipse是一个开放源代码、基于 Java 可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于经过插件组件构建开发环境。幸运是,Eclipse 附带了一个标准插件集,包含 Java 开发工具(Java Development Tools,JDT)。即使大多数用户很乐于将 Eclipse 看成 Java IDE 来使用,但 Eclipse 目标不仅限于此。Eclipse 还包含插件开发环境(Plug-in Develop
11、ment Environment,PDE),这个组件关键针对期望扩展 Eclipse 软件开发人员,因为它许可她们构建和 Eclipse 环境无缝集成工具。因为 Eclipse 中每样东西全部是插件,对于给 Eclipse 提供插件,和给用户提供一致和统一集成开发环境而言,全部工具开发人员全部含有相同发挥场所。这种平等和一致性并不仅限于 Java 开发工具。尽管 Eclipse 是使用 Java 语言开发,但它用途并不限于 Java 语言;比如,支持诸如 C/C+、COBOL 和 Eiffel 等编程语言插件已经可用,或估计会推出。Eclipse 框架还可用来作为和软件开发无关其它应用程序类型
12、基础,比如内容管理系统。基于Eclipse 应用程序突出例子是 IBM WebSphere Studio Workbench,它组成了 IBM Java 开发工具系列基础。比如,WebSphere Studio Application Developer 添加了对 JSP、servlet、EJB、XML、Web 服务和数据库访问支持。 2.Eclipse 是开放源代码软件开放源代码软件是这么一个软件,它们在公布时附带了意在确保将一些权利授予用户许可证。当然,最显著权利就是源代码必需可用,方便用户能自由地修改和再分发该软件。这种用户权利保护是经过一个称为 copyleft 策略来完成:软件许可证
13、主张版权保护,除非明确授予用户这么权利,不然用户不得分发该软件。copyleft 还要求同一许可证涵盖任何被再分发软件。这实际上倒置了版权目标使用版权来授予用户权利,而不是为软件开发者保留版权copyleft 常常被描述为“保留全部版权”。曾经四处蔓延对开放源代码软件很多恐惧、担忧和疑虑,全部和一些 copyleft 许可证所谓“病毒”性质相关假如使用开放源代码软件作为您开发程序一部分,您将失去自己知识产权,因为该许可证将“传染”您开发专有部分。换句话说,该许可证可能要求和开放源代码软件一起打包全部软件,全部必需在相同许可证之下公布。即使这对最著名 copyleft 许可证(即 GNU 通用公
14、共许可证,比如 Linux 就是在该许可证之下公布)来说可能是事实,当初还有其它许可证在商业化和小区考虑之间提供了很好平衡。1.3 开发方案选择1.运行环境网上购物系统将采取三层结构完成系统程序构建(表现层/业务层/数据层),JAVA语言完成系统软件开发。这么能够使用户端无需维护,极大节省了维护费用和时间。表现层(用户层)是以Web页面形式展现,运行在浏览器中,其具体代码是HTML或XML;其中表示层部分代码是由三层结构中间层动态生成。业务层(中间层)是由运行在Web服务器上JSP/Servlet和数据访问对象Javabean组件组成。三层结构最终一层是数据层,利用数据库管理系统SQL Ser
15、ver中数据库管理功效对数据安全性、一致性和保密性等进行控制。2.软件环境系统环境:Windows server web服务器:Tomcat数据库服务器:SQLServer用户端:IE 5.0 或以上版本,Netscape 3.0以上,Tecent等浏览器开发方案:JSP开发工具:Dreamwaver MX, Eclipse 2.1, Photoshop 7.03.硬件环境Web服务器因为Web服务器对系统I/O要求相对较高,而且随访问用户数量增加,系统实时响应能力和I/O能力要求也会要频繁地处理数据。所以在Web服务器选择上,应该采取性能较强服务器。如表1.1所表示。表1.1网上购物系统We
16、b服务器配置NTEL 8220XR处理器支持两路Intel Xeon处理器,主频最高可达2.4GHz内存1GB ECC Registered DDR内存,最大容量可扩展到8GB存放支持6块 18G/36G/73G Ultra 160 SCSI硬盘网络集成两块INTEL PRO/100+网络控制器显示集成8M显存电源服务器专用400W电源光驱标准光驱软驱1.44M 3.5软驱数据库服务器数据库服务对服务器各项配置要求也很高,要处理前端服务器请求,在数据库服务器选择上,稳定性是最关键。如表1.2所表示。表1.2网上购物系统数据库服务器配置IBM X232( 8668-42X)处理器P-III 1.
17、3G内存256MB ECC SDRAM RDIMM,最高达4GB磁盘类型10000rpm U160 SCSI HDD 容量可选网络集成10/100以太网续表1.2显示集成电源2x250W 热插拔电源光驱标准光驱软驱1.44M 3.5软驱电源电压220V 50Hz4网上购物系统网络拓扑结构图1.1所表示。图1.1 网络拓扑图1.4 开发方法1.开发网上购物系统关键问题开发电子商务系统过程中存在关键问题:1)对系统目标不明确2)没有用户见解3)开发人员和用户之间缺乏能沟通工具4)系统开发过程中没有明确阶段划分和分工5)缺乏文挡2.网上购物系统开发方法开发信息系统关键方法:1)结构化开发方法(系统生
18、命周期法)2)原型法3)面向对象方法 鉴于以上所提到问题,网上购物系统开发计划采取结构化开发方法。从而使系统功效愈加完整、具体,功效步骤较为明确。结构化程序设计就是一个进行程序设计标准和方法,根据这种标准和方法可设计出结构清楚、轻易了解、轻易修改、轻易验证程序。即:结构化程序设计是根据一定标准和原理,组织和编写正确且易读程序软件技术。结构化程序设计目标在于使程序含有一个合理结构,以确保和验证程序正确性,从而开发出正确、合理程序。(1)基础:系统逻辑功效、数据流关系。(2)借助于:一套标准设计准则和图表工具(3)结构化开发方法基础思绪:“自上而下”和“自上而下”划分反复,把系统逐层划分为多个大小
19、合适、功效明确、有一定独立性且轻易实现模块,从而把复杂系统设计转变为多个简单模块设计。3网上购物系统开发步骤图1.2所表示。图1.2 网上购物系统开发步骤图第2章 可行性研究伴随信息社会不停发展,计算机使用已经深入到大家工作生活中每一个角落。在社会每一个角落,引入计算机管理系统,能够大大提升管理效率和质量,是进行现代化、标准化建设肯定趋势。现代社会发展只有建立在现代思想及现代化管理手段之上才能生存。经过前期调研,发觉很多网上销售管理全部存在不少弊端,很多网上销售管理系统功效还未完善,进行网上销售各方面管理有时候需要花费大量人力。2.1 技术可行性待开发软件开发工具能够在Windows平台上运行
20、,也能够在Unix、Linux平台运行。硬件要求CPU 500MHZ以上,内存64MHZ以上,操作系统提议使用Windows 95以上,操作员要求对计算机操作熟练,能够熟练使用常见软件,对计算机组成结构和开发语言不做要求。现有约束和限制是:没有项目经验,即使对jsp、java有一定了解,不过深度不深,有时候需要处理部分技术性问题,现在最大难处是对整个超市制度了解甚少,考虑系统功效不够完善,有时候会遗漏很多功效,不过相信在老师指导和提点下,再加上我对网上销售管理制度逐步了解,这些困难全部回一一克服,我一定会全力使功效愈加完善。2.2 经济可行性待开发系统是网上销售系统,因为自己已经实习了一段时间
21、,对情况也有不少了解,不需要花费太多资金。至于这个系统价值,假如我这个系统做得比很好,建材企业也能够借用,毕竟我能力有限,假如教授组认为没有采纳,我认为,这是我一次宝贵项目开发经验,有很好参考价值,能够为以后在工作中奠定良好基础,所以,不管怎么样这是我自己做东西,为了表现我价值,我也会好好完成。所以,这个系统经济可行性完全可行。采取新网上销售系统可降低人工开支,节省资金,而且可大大提升信息量,缩短信息处理周期,提升信息利用率,使超时服务质量更上一个台阶。2.3 操作可行性本系统操作简单,易于了解,只需经过简单培训,上手较快,面对于系统设计还应该“标准性,安全性,兼容性,高效性,保密性,可维护性
22、”为标准,在着眼于目前实用基础上,为未来系统扩展,升级留有余地。软件开发应能在较长时间内满足市场发展需要。故新系统还需要满足以下这几具标准:1.标准性:系统软硬件选型全部应该采取工业化标准,这么既能够确保系统运行质量又能够分享在此标准上每一次技术进步。2.可靠性:因为信息关键性,系统软硬件应均为质量可靠,并采取RAID 0+1廉价磁盘冗余保护技术,确保不会因为软硬件故障造成系统运行终止而使用户蒙受损失。3.安全性:经过软件编制及硬件设置,控制使用者接触数据权限,从而确保使用者无法操作和其无关数据。4.兼容性:系统全部软硬件理论上全部应有100兼容性,用以确保软硬件可交换性。5.高效性:因为商品
23、信息每次处理信息量较大,所以系统对信息处理能力,响应能力全部应是快速而有效,在软件编制过程中应充足考虑到这一点。6.可维护性:系统软件设计应采取结构化模块设计,方便于开发和维护,也有利于依据情况随时进行功效调整。同时在系统开发时应该充足考虑到用户日常维护,使之能简便易行。2.4 其它方面可行性此次设计由本人独立完成,借鉴了部分网上销售系统烦琐、操作复杂、不易维护教训。没有什么法律约束,所以可行。另外,本系统操作简便,很适合网上销售系统管理要求,而且依据我以往所学知识和老师指导,好有同学帮助,我相信我一定能完成系统开发,并表现它价值。第3章 需求分析3.1 系统需求分析网上购物系统关键是针对住友
24、建材销售企业开发在线建材销售网上商店。传统店铺形式商店,数据比较多,商品信息量十分巨大,所以很轻易出现商品信息管理混乱;而且无法满足用户想在互联网上进行购物需求。网上购物系统关键是针对和网上商店商品购置相关数据库后台管理,它为管理员提供一个便于管理数据库中数据窗口,其目标是使管理员不需要含有十分专业计算机知识就能够对数据进行操作,完成对数据添加、删除和修改等操作;同时为前台用户提供了一个友好、便捷购物环境和购物步骤。3.2 业务步骤网上购物系统业务步骤图3.1所表示。 图3.1网上购物系统业务步骤图图3.1所表示,网上购物系统业务步骤为:用户首次网上购物系统,首优异行身份注册。输入注册信息以后
25、,用户信息就存到了用户信息表,用户就成为了会员。下次登录时候,能够使用注册时填写会员ID和密码进行登录。用户登录以后就能够购置商品、浏览广告、查看帐户信息和反馈留言。图3.2 销售系统业务步骤图图3.2所表示,销售管理系统业务步骤为:会员使用自己用户名和密码登陆前台销售界面,管理员使用授权密码登陆后台管理界面。管理员经过后台查看、删除、录入和修改商品信息,并存档商品信息表。商品信息表返回视图供会员在前台对商品进行浏览和查询。会员在前台选择好满意商品后,添加到自己购物车,能够在自己购物车上添加商品、删除商品、更改商品数量、返回继续购物等操作。购物完成后,点击结帐按钮,依据用户信息表和库存信息表生
26、成销售订单,并存档销售订单表。管理员在后台界面对销售订单进行确定和删除操作,会员也能够经过前台界面对销售订单状态进行查询和取消未完成销售订单。管理员依据完成销售订单生成出库申请单和销售收款单分别提交给库存部门和财务部门。3.3 数据步骤数据流图(Data Flow Diagram, 简称DFD)是在对系统充足调查研究基础上,从系统科学性、管理合理性、实际运行可行性角度出发,将信息处理功效和相互之间联络自顶向下、逐层分解,从逻辑上正确地描述系统应含有数据加工功效、数据输入、数据输出、数据存放及数据起源和去向(外部项)。1数据步骤图顶层,图3.3所表示。图3.3 数据步骤图顶层2数据步骤图第一层,
27、图3.4所表示。图3.4 数据步骤图第一层3数据步骤图第二层1)管理商品信息模块,图3.5所表示。图3.5 数据步骤图第二层(P1)2)商品浏览和查询模块,图3.6所表示。图3.6 数据步骤图第二层(P2)3)处理购物车模块,图3.7所表示。图3.7 数据步骤图第二层(P3)4)订单处理模块,图3.8所表示。图3.8 数据步骤图第二层(P4)5)生成单据模块,图3.9所表示。图3.9 数据步骤图第二层(P5)6)反馈留言模块,图3.10所表示。图3.10 数据步骤图第二层(P6)3.4数据字典数据字典(Data Dictionary, 简称 DD)是相关数据数据,它制作填补数据流图对数据具体内
28、容不能具体说明不足。在数据流图中,包含数据流、数据存放、加工(处理逻辑)和外部实体,数据字典正是对这些组成部分进行说明、保留和维护。以下是本系统数据流图部分数据字典。1) 数据流定义 总编号:1001 编号:F01名 称:商品分类信息来 源:P1.1商品分类管理 去 向:D1商品信息表说 明:录入商品类别信息总编号:1008 编号:F08名 称:库存信息来 源:D2库存信息表去 向:P3.1添加商品说 明:从库存信息表调用商品库存信息到购物车处理总编号:1017 编号:F10名 称:订单状态来 源:P4.3确定订单去 向:D5订单状态表说 明:将订单状态确实定信息保留到订单状态表总编号:101
29、7 编号:F14名 称:订单信息来 源:D6订单明细表去 向:P5.4编写出库申请单说 明:自动调用和订单号对应相关订单信息 总编号:1017 编号:F17名 称:留言信息来 源:会员 去 向:P6.2填写留言说 明:用户依据留言板表单填写留言信息2) 数据存放定义总编号:2001 编号:D1名 称:商品信息表说 明:商品基础信息统计组 成:产品编号、分类、名称、型号、规格、生产厂家、描述、是否有库存、注册日期相关数据流:P1.2D1总编号:2005 编号:D5名 称:订单状态表说 明:订单状态信息组 成:订单编号、订单中商品、订单时间、订单状态相关数据流:P4.3D5 P4.5D5总编号:2
30、09 编号:D9名 称:留言信息表说 明:统计用户留言信息组 成:留言标题、留言者姓名、留言时间、留言内容、留言者邮箱相关数据流:P6.1D9 P6.2D93) 外部实体定义总编号:3001 编号:S01名 称:管理员说 明:后台管理整个销售系统输入数据流:无输出数据流:F01商品分类信息 F02 商品信息总编号:3003 编号:S03名 称:库存部门说 明:对商品入库和出库进行管理输入数据流:D9出库申请单输出数据流:D2库存信息表 总编号:3004 编号:S04名 称:财务部门说 明:对订单进行结算处理输入数据流:D8销售收款单输出数据流:无4) 处理过程定义总编号:4001 编号:P1.
31、1名 称:商品分类管理说 明:分类商品信息处理功效:对商品进行分类和录入数据库,和删除现有商品分类输入数据流:F01商品分类信息输出数据流:F02分类信息总编号:4004 编号:P2.1名 称:浏览商品列表 说 明:商品分类和商品基础信息展示处理功效:调用商品分类表、商品信息表和商品明细表,提供给用户一个前台浏览页面 输入数据流:D1 商品信息表输出数据流:P3购物车处理总编号:4013 编号:P3.7名 称:生成订单说 明:和下一个模块订单处理相衔接处理功效:依据选择好商品基础信息,金额和用户信息生成订单基础信息输入数据流:F12订单信息 F13用户信息输出数据流:F14订单明细总编号:40
32、16 编号:P4.3名 称:确定订单说 明:确定订单状态和订单中信息处理功效:管理员后台确定用户前台生成销售订单,把订单状态信息存入订单状态表输入数据流:P4.1查看订单输出数据流:D5订单状态表总编号:4020 编号:P5.1名 称:编制销售收款单说 明:添加销售收款信息并存档处理功效:依据销售订单信息编制销售收款单输入数据流:F21销售订单输出数据流:F22销售收款单第4章 数据库设计4.1 数据库设计总述数据库系统关键由三大部分组成:数据库管理系统(DBMS:它是专门负责组织和管理数据信息程序)、数据库应用程序(它使我们能够获取、显示和更新有DBMS存取数据)、数据库(按一定结构组织在一
33、起相关数据集合)。伴随DBMS技术发展,现在数据库系统正像用户/服务器数据库将DBMS和数据库应用程序分开,从而提升了数据库系统处理能力。数据库应用程序运行在一个或多个用户工作站(用户机)上,而且经过网络和运行在其它计算机上(服务器)一个庞大Web服务器站点开通,海量以HTML为代表非结构化数据应用,使大家意识到传统关系型数据库以近个远远不能满足这些实际应用需求。各大数据库厂商纷纷提出“面向对象数据库”、“非结构化数据库”概念,在理论上寻求突破。通俗地了解非结构化数据库概念,就是能够处理统计变长,字段可反复,支持全文检索,支持多媒体信息新型数据库。数据库加上对应操作和管理数据库软件,即为一个数
34、据库管理系统(DBMS),它能合理地组织和存放大量数据,并支持对于数据库表中数据多种操作,如:更新、排序、索引、查询、列表、打印等。数据库系统是实现有组织、动态地存放大量相关数据,方便用户访问计算机软件、硬件资源组成系统,它由数据库管理系统、数据库和支撑数据库管理系统软、硬件组成。数据库离不开数据模型。数据模型是对现实世界客观事物及其联络描述,她放映数据项之间和统计之间联络,在数据库技术中使用模型概念描述数据库结构和语义。常见三种数据模型:层次模型、网状模型和关系模型。另外,要有面向对象模型等。数据访问接口是一个对象模式,她代表了访问数据各个方面。使用PB能够在任何应用程序中经过编程来控制连接
35、、语句生成器和供使用返回数据。关系模型把数据之间关系看成一个二维表关系,因为二维表关系建立在集合代数关系理论基础上,所以,把这种建立在模型基础上数据库称为关系数据库。数据库和文件系统不一样,起数据独立于程序而存在,而且能够提供给不一样用户共享使用,其基础思想是多全部数据实施统一、集中、独立于程序管理。数据库管理系统很好实现了这一基础思想。下面是数据库系统中部分概念和术语:数据库设计就是在所选定数据库管理信息系统上建立数据库模型过程,通常来说,能够用以下三个步骤进行设计,即如概念设计、逻辑设计、物理设计。关系数据库起数据类型是由数据结构类型集合、操作集合和完整性集合散布跟组成。其特点是实体描述和
36、实体间联络描述是采取单一结构类型,全部用关系表示。1.概念结构设计目标是将需求分析中相关数据需求,综合为一个统一概念模型。依据应用要求对要管理对象进行充足调查分析,在此基础上抽象出各个实体,并找出各个实体间联络(即数据库之间关系),从而建立概念模型。2.逻辑设计将前一步得出概念模型转换为特定数据库管理系统能够接收逻辑模式。利用所选定数据管理系统用对应数据描述语言对数据类似(即概念模型)进行正确定义,即把概念模型映衬到逻辑模型上。3.物理设计目标在于确定数据库存放结构。其关键任务包含:确定数据库文件和索引文件统计格式和物理结构,选择存取方法,决定存放文件路径和外存放器分配策略等。表(Table)
37、:一个表就是一组相关数据按行排列,像一张表格一样。字段(Field):在表中,每一列称为一个字段。每一个字段全部有对应描述信息,如数据类型、数据宽度等。统计(Record):在表中,每一行称为一条统计。索引(Index):为了加紧访问数据库速度,很多数据库全部是用索引。4.2 概念设计概念模型是对信息世界建模,所以概念模型应该能够方便、正确表示出信息世界中常见概念。实体-关系模型(Entity-Relationship Module,简称E-R图)是数据库结构设计常见方法。E-R图提供了表示实体、属性和联络方法。实体型:用矩形表示,矩形框内写明实体名属性:用椭圆型表示,并用无向边和其对应实体连
38、接起来联络:用菱形表示,菱形框内写明联络名,并用无向边和其相关实体连接起来,同时在边旁边标上联络类型(1:1,1:n或m:n)。将需求分析得到用户需求抽象为信息结构,即概念模型过程就是概念结构设计。在概念设计阶段,描述系统概念模型有力工具是E-R模型。图4.1所表示。 图4.1 系统ER图4.3 逻辑设计逻辑结构设计是把概念结构设计阶段设计好E-R图转换成和选择DBMS产品所支持数据模型(本网站采取关系数据模型)相符合逻辑结构。依据销售管理子系统E-R图转换为以下关系数据模型。商品分类表(商品分类编号,商品分类名称,商品分类描述)。商品信息表(商品编号,商品分类编号,商品名称,商品描述,是否有
39、库存,商品添加时间,商品规格,生产厂家,产地)。商品明细表(商品ID,商品编号,商品分类描述,市场价格,会员价格,商品状态)。库存信息表(商品ID,商品库存量)。销售订单表(订单编号,用户编号,订单日期,用户地址(街道),用户地址(城市),用户地址(省份),用户邮编,订单金额,订单姓名,信用卡号,信用卡类型)。销售订单明细表(订单编号,商品编号,订单中商品,商品数量,单价)。销售订单状态表(订单编号,商品编号,订单状态,订单时间)。留言信息表(留言标题,用户编号,留言时间,留言内容,留言者邮箱)。出库申请单(订单编号,出库申请单编号,用户编号,订单日期,商品ID,商品数量,申请人,审核人,备注
40、)。销售收款单(订单编号,销售收款单编号,用户编号,订单日期,销售金额,收款人,审核人,备注)。用户信息表(用户编号,用户名,用户电话,用户地址(街道),用户地址(城市),用户地址(省份),用户邮编,信用卡号,信用卡类型,用户登陆次数,用户上次登陆时间,用户类型,密码,)。图4.2所表示为系统数据库逻辑关系设计。图4.2数据库关系图4.4 物理设计4.4.1 设计原理数据库最终是要存放在物理设备上。为一个给定逻辑数据模型选择一个最适合应用环境物理结构(存放结构和存取方法)过程,就是数据库物理设计。物理结构依靠于给定DBMS和硬件系统,所以设计人员必需充足了解所用DBMS内部特征,尤其是存放结构
41、和存取方法;充足了解应用环境,尤其是应用处理频率和响应时间要求;和充足了解外存设备特征。1.确定数据存放结构确定数据库存放结构时要综合考虑存取时间、存取空间利用率和维护代价三方面原因。这三个方面常常是相互矛盾,比如消除一切冗余数据即使能够节省存放空间,但往往会造成检索代价增加,所以必需进行权衡,选择一个之中方案。2.设计数据存取路径在关系数据库中,选择存取路径关键是指确定怎样建立索引。比如,应把那些域作为次码建立次索引,建立单码缩印好事组合索引,建立多少个为适宜,是否建立聚集索引等。3.确定数据存放位置为了提升系统性能,数据应该依据应用情况将易变部分和稳定部分、常常存取部分和存取频率较低部分分
42、开存放。4.确定系统配置DBMS产品通常全部提供了部分存放分配参数,供设计人员和DBA对数据库进行物理优化。初始情况下,系统全部为这些变量给予了合理缺省值。不过这些值不一定适合每一个应用环境,在进行物理设计时,需要重新对这些变量赋值以改善系统性能。4.4.2 设计方案依据以上数据库设计原理,在建立数据库时,对应逻辑设计数据库名jspdev,设计数据库物理文件及相关属性以下:主数据文件:jspdev_Data.MDF。初始空间:1.56MB,若超出空间按10%自动增加。存放路径:c:program filesMicrosoft SQL ServerMSSQLDatabase。最大文件大小:不受限
43、。日志文件:jspdev_Log.LDF。初始空间:1MB,若超出空间按10%自动增加。存放路径:c:program filesMicrosoft SQL ServerMSSQLDatabase。最大文件大小:不受限。4.5 数据库实现依据逻辑设计中转换后关系模型和对关系模型进行优化,能够在已经创建好数据库上创建数据表。如各表下为销售管理子系统数据库物理设计:表4.1商品分类表段名说明类型长度可否为空主键catid商品分类编号Varchar20否是name商品分类名称Varchar80能够descn商品分类描述Varchar225能够表4.2商品信息表字段名说明类型长度可否为空主键produc
44、tid商品编号Varchar30否是category商品分类编号Varchar30否name商品名称Varchar80能够descn商品描述Varchar225能够isPromot是否有库存Bit1能够registerTime商品添加时间Datetime8能够standard商品规格Varchar80能够type商品型号Varchar50能够supplier生产厂家Varchar50能够supplyland产地Varchar30能够表4.3商品明细表字段名说明类型长度可否为空主键itemid商品IDVarchar30否是productid商品编号Varchar30否是listprice市场价格decimal9能够unitcost会员价格decimal9能够status商品状态Varchar2能够表4.4库存信息表字段名说明类型长度可否为空主键itemid商品IDVarchar30否是qty商品库存量Int4能够表4.5销售订单表字段名说明类型长度可否为空主键orderid订单编号Varchar30否是userid用户编号Varchar80能够orderdate订单日期datetime8能够shipstreet用户地址(街道)Varchar80能够shipcity用户地址(城市)Varchar80能够shipstate用户地址(省份)Varchar