服装销售系统数据库设计概要

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

服装销售系统数据库设计一:需求描述某服装连锁店要开发一套服装销售管理软件,对日常的服装销售进行信息化管理,要求该软件实现服装销售行业的采购订货、退货、前台零售、批发业务、促销管理、会员管理、库存管理、库存盘点等各个业务流程,把服装销售行业的进货、退货、销售、库存、财务等业务实现一体化管理。开发该软件有两大部分工作要做:第一后台数据库的设计;第二前端界面功能开发。现阶段我们要完成后台数据库的设计。为了方便起见,我们实现对服装销售核心业务“销售管理”子模块的设计。该模块实现“服装的基础信息维护、服装销售、常见查询、利润统计、销售冠军排名”等功能。二:开发环境开发工具:SQLServer2005企业版。三:技能点(1、在SQLServer中创建库、建表、建约束。(2、INSERT、UPDATE、DELETE、SELECT语句。(3、统计函数:如SUM、COUNT、AVG等。(4、多表关联查询。(5、GROUPBy分组统计。四:问题分析为了实现服装销售管理,需要建立数据库及数据表对数据进行有效存储。经过分析,涉及到的数据表至少有服装基础表和服装销售表。以下为服装基础表和服装销售表。1、服装基础表(clBaseInfo表3.1服装表(clBaseInfo2、服装销售表(clSales表3.2服装销售表(clSales五:任务实现1、创建数据库在本机D盘新建文件夹SalesProject,在SQLServerManagermentStudio中按要求创建数据库SalesDB,保存在SalesProject文件夹下。主数据库文件增长率为12%,日志文件增长率为5%,并且日志文件最大为50M。2、创建数据表(1、在数据库中创建服装基础表clBaseInfo,逐一设置字段名、字段长度、数据类型等。(2、在数据库中创建服装销售表clSales。3、增加约束根据表3.1说明部分要求,设置各列约束:(1、必填项,表明该字段应添加非空约束。(2、服装条形码,为主键列,应增加主键约束。(3、有默认值的应增加默认约束。(4、款号列应配合LIKE关键字增加检查约束。根据表3.2说明部分要求,设置各列约束:(1、ID增加标识列约束,标识种子为1,标识增量为1;并设置主键约束。(2、ShopName、SalesDate、payType列应增加默认约束。(3、SalesCode、SalesCount列增加检查约束。(4、BarCode设置外键约束,对应主表clBaseInfo中BarCode主键列。(5、BarCode设置外键约束,对应主表clBaseInfo中BarCode主键列。4、建立表间关系两表通过BarCode列建立表间关系。5、插入测试数据编写INSERTINTO…语句向clBaseInfo和clSales表插入测试数据,测试数据分别如3.3和3.4所示。表3.3服装基础表测试数据表3.4服装销售测试数据图3.1服装基本信息表图3.2服装销售记录表(2查询品牌是雅戈尔的服装基本信息。(3查询单笔销售数量为3件以上的销售人员,只显示姓名。要求姓名列不能出现重复信息。(8显示2010年1季度总销售冠军,要求显示分店名,销售员,销售额。(9查询各种服装销售的详细信息要求显示店名、销售人、服装名称、品牌、销售日期、销售金额,并按分店名称排序。(10统计各类服装销售数量,要求显示服装名称、销售数量,并按销售数量升序排序,如果某些服装没有销售过,销售数量显示NULL。统计结果如图3.3所示:图3.3统计结果(11统计各类服装销售数量,要求显示服装名称、销售数量,并按销售数量升序排序,如果某些面料的服装没有销售过,销售数量显示NULL。7、修改数据将条码号为'MCBZ0001'的服装,面料由'丝绸'改成'针织'。8、索引送货方式和付款方式两个表都只有几行数据,因此,无需创建索引。订单表和订单明细表数据量将会比较大,且对它们的查询也比较多,应该考虑适当创建索引。经分析,在订单表上,基于订单状态和订单提交时间的查询会较多,因此,在这两列上分别创建索引,命名为order_state_idx和order_time_idx。在订单明细表上,基于订单号和手机号的查询会较多,因此,在这两列上分别创建索引,并分别命名为orderdet_orderid_idx和orderdet_mobid_idx。9、存储过程、函数1插入订单表时,必须同时插入订单明细,两个动作在一个事务里2删除送货方式时,必须检查订单表里是否使用,未使用才可以删除3在用户提交订单时,要求系统自动产生一个20位长的包含年月日时分秒信息的字符串,为了实现这一功能,可以设计一个函数,当向订单表中插入数据时调用该函数4为了显示某个订单的详细信息,即订单明细,需要根据订单编号进行显示,为完成此功能,设计一个存储过程,以订单编号作输入参数,动态游标作输出参数,返回某个订单的明细信息10、触发器1创建订单表上的UPDATE触发器2当订单完成时,订单的状态需要被修改为3,同时应该自动为会员增加积分,利用带条件的UPDATE触发器完成此功能。11、创建登录帐号和分配权限数据库用户分为销售员和采购员,进货员负责采购服装并将服装信息录入到clBaseInfo表中,销售员负责销售,并将销售信息保存到clSales表中。不同角色人员负责不同工作,不同角色对不同的表有不同的操作权限,具体权限如下:采购员:对服装基本信息表clBaseInfo具备增、删、改、查的权限,而对服装销售表clSales表只能查看,不能修改。销售员:对服装销售表clSales表具备增、删、改、查的权限,而对服装基本信息表只能查看,不能修改。为此需要在SQLServer2005中分别创建登录账户,并分配相应的权限,步骤为:(1创建登录账户,采购员登录名为:Buyers;销售员登录名为:SalesPerson。图3.4创建登录账户(2赋予相应的权限。图3.5给用户设置权限(3测试权限是否正确。1、使用SalesPerson用户登录SQLServer。2、SalesPerson用户无权对clBaseInfo进行更新操作图3.7无权限操作12、导出数据在D盘文件夹SalesProject下新建SalesDBExcel文件,将clBaseInfo和clSales两表的数据导出到此Excel文件中。导出完成后,查看导出数据是否正确。13、导出脚本需要将clBaseInfo和clSales两个表的表结构导出生成脚本文件,并将脚本文件命名为“SalesDB.sql”保存到D:\SalesProject文件夹下。生成的脚本文件中,全部都是T-SQL的DDL代码,关于DDL(数据定义语言将在下学期进行深入学习。图3.8生成脚本14、备份数据库使用SQLServer2005向导,备份SalesDB数据库,备份文件命名为“SalesDBBack.bak”并保存在D:\SalesProject文件夹下。最后将D:\SalesProject文件夹提交到老师所指定的服务器指定目录中。六:课时安排1、需求讲解(15分钟学员阅读项目需求,对项目整体要求做到心中有数。老师讲解需求。2、任务实现(165分钟建库、建表、增加约束、建立表间关系。(30分钟编写SQL语句插入数据,查询数据、修改数据。(100分钟创建登录账户、测试权限、导出数据、生成脚本、备份数据库。(35分钟3、项目总结(20分钟

1 / 16
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功