1、图书销售管理数据库课程设计说明书题目: 图书销售管理系统 院 系: 信电工程学院 专业班级: 06计本3班 学 号: 学生姓名: 指导教师: 2008年 12月 18日第1章 应用背景与需求说明31.1 开发背景31.2 开发环境与工具31.3 系统需求分析3 1.4 系统功能分析 4第2章 解决方案42.1实体信息42.2实体联系信息5第3章 系统实现63.1概念结构设计6 3.1.1E-R图63.2系统功能模块设计73.3逻辑结构设计8 3.3.1数据库关系模式8 3.3.2 数据库及表结构的创建9 3.3.3数据库表关系图13第4章 结束语14参考文献 151.1开发背景随着社会的发展,
2、人们生活水平的不断提高,物质文化的发展已经远远满足不了人们的需求,精神文明有了飞速的发展,因此图书事业的发展就成为精神文明进步的一个动力。在迈入二十一世纪的今天,对书店的管理显得极其重要,合理地管理不但反映一个国家的科技水平,而且影响人们对知识掌握的速度和质量。在知识经济时代到来的今天,用计算机控制图书馆的工作由自动化系统运行而完成。这不仅节省了人力,还提高了工作效率和服务质量,而且还加速了图书的流通。1.2开发环境与开发工具本系统开发环境为局域网或者校园网网络环境,网络中有一台安Windows 2003 Server的服务器,服务器上安装SQL Server 2000,本系统使用Visual
3、 C+ 6.0基于C/S结构开发,网络上任一安装Windows 98及以上版本的计算机可作为客机,系统设计与运行均可在客户机上运行。1.3系统需求分析本系统的设计模式模拟是书店(特别是大型图书批发公司)的图书销售情况,经过充分地系统调研,发现本系统应包括图书信息,客户(包括顾客信息,供应商信息),营销信息(包括进货信息,销售信息),销售统计信息,退货信息。除此之外应该还包括操作员信息(分为普通用户,系统管理员).本系统的具体要求为: 1. 能全面管理图书销售系统的各类主体的信息,如图书信息,顾客信息,供应商信息,进货信息,退货信息,销售信息等。 2.通过使用计算机能方便地维护(包括添加,删除,
4、修改,查询)各信息等。 3.能组合查询基于某个信息表的所需信息。 4.能方便的实现基于多个表的连接查询。 5.能方便地实现单个或者多个表的统计功能。 6.需要时能即时进行输出与打印。 7.系统应具有网络多用户功能,具有用户管理功能,对普通用户和管理员提供相应系统功能。对管理员提供增加用户功能。 8. 系统具有操作方便,简捷等特点。 1.4系统功能分析 1. 每个用户进入该系统都要通过正确的帐号跟密码登陆。其中用户包括操作员,系统管理员。其中用户都可以更改自己的密码,而且系统管理员可以添加用户。2. 操作员通过自己的帐号和密码登陆到系统,即是操作员在上班的时候。操作员可以进行销售图书。可以查看供
5、应商和顾客的信息,还有进行进货和退货处理以及查看销售统计信息。当然操作员可以对所以信息进行修改,删除,增加,除了销售统计信息。同时操作员可以在自己登陆期间更改密码。3. 系统管理员登陆到系统。除了具有操作员所以功能外, 还可以进行添加用户名和密码。4. 同时,上述每个操作到数据的,都可以实现用户所需信息的打印。 2.1实体信息(分组:洪叶君分析实体1-4;程文婷分析实体5-8) ORDER INFO:销售信息ORDER TIME: 销售时间 BOOKNAME : 图书名称 CUSTOMER NAME: 顾客信息 PRICE: 图书价格 NO: 销售代号 NUMBER: 数 量 ACCOUNT:
6、 结帐总额 DEMO: 备注信息 STOCK INFORMATION:进货信息STOCK TIME: 销售时间 BOOK NAME : 图书名称 PROVIDER NAME:供应商名称 NUMBER: 图书数量 PRICE: 图书价格 NO: 进货代号 ACCOUNT: 结帐总额 DEMO: 备注信息 REFUND INFORMATION:退货信息REFUND TIME: 退货时间 BOOK NAME: 图书名称 CUSTOMER NAME: 顾客姓名 NUM: 图书数量 PRICE: 图书价格 NO: 退货代号 ACCOUNT: 结帐总额 DEMO: 备注信息 LIB INFORMATION
7、:库存信息 NAME: 图书名称 数据类型: NUM: 图书数量 数据类型: 2.2实体联系信息1.进货:一次进货的图书信息只对应一个员工。一个员工可以进很多书。一次进货可以进很多的图书,而一本图书信息只能对应某一此进货。进货时肯定会导致库存表的修改。同时对营业信息的支出也会作出更改。2.退货:一次退货只能对应一个客户的信息。一次退货可以时多本书也可以是一本书。当然处理退货的只能对应一个员工。一次退货肯定会导致库存信息的修改。退货的书都有相应的图书信息。某天的退货会使得该天的营业信息的支出增加。3.销售:一次销售一次只能对应一个员工和一个客户,可以销售一本也可销售多本。如果有多个柜台可以同时允
8、许多个销售。每次销售都有图书信息,从而也会导致库存量的减少。相应的也会增加营业信息中的收入。4.统计:由相应的营业信息可以统计近段时间内的销售情况。5.登陆:对应不同用户登陆到该系统,每个用户都要相应的用户名和密码。同时不同的用户由不同的权限。3.1概念结构设计 数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利于应用系统程序的实现。3.1.1E-R图在充分需求分析的基础上,经过逐步抽象,概括,分析,充分研讨,可以画出如下反映图书销售管理
9、系统数据的整体E-R图.(注:E-R图处分组:洪叶君完成1-4部分;程文婷完成5-8部分)3.2 系统功能模块设计 对系统各项功能进行集中,分块,按照结构化程序设计的要求,可得出系统的功能模块图如下:3.3 数据库逻辑结构设计3.3.1数据库关系模式按照实体-联系图转化为关系模式的规则,本系统的E-R图可转化为如下有8关系模式(注:此处分组完成)销售(销售代号,图书名称,顾客名称,销售数量,价格,时间,结帐总额,备注信息)进货(退货代号,图书名称,供应商公司,销售数量,价格,时间,结帐总额,备注信息)退货(退货代号,图书名称,顾客姓名,销售数量,价格,时间,结帐总额,备注信息) 库存(图书名称
10、,图书数量)3.3.2 数据库及表结构的创建设本系统使用的数据库名为tsxs,根据已设计的关系模式及各模式的完整性要求,现在就可以在SQL Server 2000数据库系统中实现这些逻辑结构。3.3.3数据库表关系图数据库名称:xsgl,创建8张用户表后,表间能形成如下的关系图。基于该用表关系图,可以定义出各种常见的用户表视图用来作为统计信息。如:1.图书销售统计Create View OrderStat as Select TOP 10 Book.ISBN , Lib.bName , Book.bClass , Book.bAuthor , Book.bPress , Lib.lNumber
11、From Book,LibWhere Lib.bName=Book.bNameOrder by Lib.lNumber DESC2.图书退货统计Create view RefundStat asSelect TOP 10 Book.ISBN,Lib.bName,Book.bClass,Book.bAuthor,Book.bPress,Refund.rNumberFrom Book,Lib,RefundWhere Lib.bName=Book.bName and Refund.bName=Book.bNameOrder by Refund.rNumber DESC3.图书体日销售量统计 Crea
12、te view DayStat asselect TOP 10 Orders.oDate as 日期 ,SUM(Orders.oNumber) as 数量From Orders,Lib,BookWhere Lib.bName=Book.bName and Orders.bName=Book.bNameGroup by Orders.oDateOrder by Orders.oDate ASC4.库存信息量Create view LibStat asSelect Book.ISBN,Lib.bName,Book.bClass,Book.bAuthor,Book.bPress,Lib.lNumbe
13、rFrom Lib,BookWhere Lib.bName=Book.bName 4.结束语通过这次的数据库课程设计,独立完成了图书销售管理系统的设计,从这次的系统设计中我领略了一下几点:1)数据库应用系统的开发设计是一个规范化的过程,需要遵循以定的方式方法与开发设计步骤;2)开发一个数据库应用系统,通常要经过调查分析、数据建模、功能设计、选择数据库系统、选择数据库访问技术等5个阶段;3)数据库关系模式的设计非常的重要,使整个系统的设计中心,其设计合理否,将全面影响整个系统的成功实现;4)应用系统中数据库操作的实质是设计、组织、递交SQL命令,并根据SQL命令的执行状态决定后续的数据库处理与操
14、作。5)本系统设计用的是被Visual C+封装起来的ADO对象,使用ADO访问数据库的确很方便,不要弄清它里面怎么实现的,只要懂得SQL语言都可以实现数据库的所有操作,最后返回的是一个RecordSet记录集,操作起来的确很方便。不过这次课程设计碰到过很多困难,由于是第一次使用MFC一开始的确很困难,编译的时候都有几十个错误,不过到后期虽然好多了。由编译的错误转移到运行时的错误,花了2天的时间找一个错误,最后还是没找出来,但是这样也更触发了我在今后的学习过程中去学习这方面的知识的欲望。由于时间仓促,系统中存在一些bug,功能方面比较全面,那个打印功能是调用MFC框架生成自动有的,不过它打印的
15、时视图而不是控件里面的内容,由于时间我也没去查MSDN去实现了。通过这次的数据库课程设计确实让我受益匪浅,对数据库知识有了更一步的掌握,还学会了怎么用VC工具开发MIS系统,不过到开发后期,总是会想到前期数据库设计的重要性。如果前面没有做的完整,导致后面总是要回到前面去修改,而且还会导致程序出错。相信通过这次的数据库课程设计,使得本人的经验有多了很多。对以后碰到类似的问题,就会变得游刃有余了。也可推知其他方面的问题,只要有信心,认真相信都会成功的解决。参考文献1钱雪忠、黄学光、刘肃平 主编,数据库原理及应用,北京邮电大学出版社,2005.82钱雪忠、黄学光、刘肃平 主编,数据库原理及应用实验指导,北京邮电大学出版社,2005.83 赛奎春、张雨 编著,Visual C+ 工程应用与项目实践,海洋出版社,2005.14 软宇 编著,Visual C+ 6.0 基础教程,高等教育出版社,2000.75乌尼尔、董海军 编著,Visual C+ 经典例程分析,中国电力出版社,2001.5
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1