客户运送数据库设计.docx_第1页
客户运送数据库设计.docx_第2页
客户运送数据库设计.docx_第3页
客户运送数据库设计.docx_第4页
客户运送数据库设计.docx_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学 号: 课 程 设 计题 目客户运送数据库设计学 院计算机学院专 业班 级姓 名指导教师唐祖锴2013年1月9日 课程设计任务书学生姓名: 专业班级: 指导教师: 唐祖锴 工作单位: 计算机学院 题目:客户运送数据库设计初始条件:一个专门进行运输业务的运送公司希望建立一个数据库以控制用户的运输订单。客户向一个办事处进行注册可以有一个或多个订单。每个订单都描述了运输的路线,包括各个地点和目的地。计算每个订单的需要的班数和拖车数等。每个办事处分配给几个班和拖车。一个班可以有一辆或两辆拖车。要求完成的主要任务:1. 根据上述的初始条件,进行调查分析并设计适当的属性。设计一个客户运送数据库,DBMS可选Ms SQL Server、Access、VFP等。2. 完成课程设计说明书,其格式遵守学校今年的新规定。主要内容包括:需求分析,概念设计,逻辑设计,物理实现等。3. 基于该数据库,最好实现一个或多个应用程序(自己确定功能),程序设计语言(工具)任选。这一项是选作,不作硬性要求。时间安排:本学期第18周:1. 消化资料、系统调查1天2. 系统分析1天3. 总体设计,实施计划2天4. 撰写报告1天指导教师签名:年月日系主任(或责任教师)签名:年月日客户运送数据库设计1. 需求分析及说明:1.1需求分析和可行性分析:需求分析的任务是调查应用领域,对应用领域中各种应用的信息要求和操作要求进行详细分析,形成需求分析说明书。需求分析过程一般分一下几个阶段:(1) 调查组织机构的总体情况(2) 熟悉各部门的业务活动情况(3) 分析用户的需求(4) 确定新系统的边界1.2具体说明:由于客户提交订单时会有各种不同的需求,而且随着客户注册量的增加,客户的信息量也在增加,而且必须确保客户信息的准确和完整性。运输货物有其属性,如:货物名,运输价等。不同的客户会与公司建立不同的订单,这些订单对应着不同的运输细则。这些都是很庞大的数据量,需要建立一个数据库来保存和方便的查询。1.3问题域描述:客户找运输公司运送,这时候客户要把客户的姓名,收获地址,联系电话,邮箱地址,邮编等信息给公司。客户可以签订多份订单。在每个订单中可以有多种货物。每个订单就可以对应多份运输细则。公司根据订单为客户运货。客户可以登录到订单管理系统查询自己的信息。公司可以进入订货管理系统对客户信息进行添加,删除,修改等。这个时候还要考虑到客户只能够看而不能够去修改其数据。1.4数据流图:客户管理员客户订单管理 系统办 事 处注册发订单返回结果查询订单信息返回结果登录信息返回订单返回计算结果查询结果处理数据库信息返回结果1.5数据字典:数据项是数据的最小单位,对数据相的描述包括:数据项名、含义、别名、类型、长度、取值范围以及与其他数据项的逻辑关系。(1)客户信息:客户号,姓名,电话,邮箱,邮编,收货地址,余额,折扣,开户银行,银行账户(2)订单信息:订单号,客户号,收货地址,订单日期,发货日期,预计寄达时间,运输方式,付款方式(3)运输细则信息:货物号,运输细则号,订单号,运输数量,运输价,运送班次,运送车数 (4)货物信息:货物号,货物名,货物保证金,货物数量,货物描述(5)账号信息:用户名,密码,权限1.5.2数据表:客户表:列名数据类型长度允许空客户号文本50否收货地址文本50否余额数字长整型是折扣数字长整型是开户银行文本50否银行账户文本50否姓名文本50否电话文本50否邮箱文本50是邮编文本50否订单:列名数据类型长度允许空订单号数字长整型否客户号文本50否收货地址文本50否订单日期日期/时间否发货日期日期/时间否预计寄达时间日期/时间是运输数量数字长整型否运输方式文本50是付款方式文本50否运输细则表:列名数据类型长度允许空货物号数字长整型否运输细则号数字长整型否订单号数字长整型否运输数量数字长整型否运输价数字长整型否运送班次数字长整型否运送车数数字长整型否货物表:列名数据类型长度允许空货物号数字长整型否货物名文本50否货物保证金数字长整型否货物数量数字长整型否货物描述文本50是账号表:列名数据类型长度允许空用户名文本50否密码文本50否权限文本50否2. 概念设计:概念设计结构通常有自顶向下、自底向上、逐步扩张、混合策略4类方法。其中最经常采用的策略是自底向上的方法。即自顶向下的进行需求分析,然后在自底向上地设计概念结构。自底向上设计概念结构的方法通常有可分为两步:(1)抽象数据并设计局部视图。(2)集成局部视图,得到全局的概念结构。2.1数据库的实体及属性:客户信息:客户号,姓名,电话,邮箱,邮编,收货地址,余额,折扣,开户银行,银行账户订单信息:订单号,客户号,收货地址,订单日期,发货日期,运输数量预计寄达时间,运输方式,付款方式运输细则信息:货物号,运输细则号,订单号,运输数量,运输价,运送班次,运送车数 货物信息:货物号,货物名,货物保证金,货物数量,货物描述账号信息:用户名,密码,权限2.2系统E-R图设计:为了把系统的数据要求清楚、准确地描述出来,系统分析员通常建立一个概念性的数据模型(E-R图)。它描述了从用户角度看到的数据,它反映了用户的显示环境,而且与在软件中的实现方法无关。 以下便是本系统的E-R图表示:2.2.1客户实体图和描述:客户姓名电话邮箱邮编收货地址余额折扣银行账户开户银行客户号描述:客户号唯一的标示一位客户。一个客户号可以对应多个订单号2.2.2订单实体图和描述:订单客户号发货日期预计寄达时间付款方式收货地址运输方式运输数量订单号订单日期描述:订单号唯一的确定一个订单,在运输细则里可以看到一个订单里可以对应多个运输细则号。订单号作为运输细则里的外码。2.2.3运输细则实体图和描述:运输细则货物号订货价运输细则号运输价运输数量订单号运送班次描述:运输细则号可以唯一的确定一份运输细则。顾客运输一种货物的话只能对应一个运输细则号.但是一个运输细则号只能对应一种货物号。订单里不同的细则号就可以对应多种货物了。2.2.4货物实体图和描述:货物货物号货物保证金货物数量货物名货物描述描述:货物号可以唯一的确定一种货物。通过货物号与运输细则号联系起来就可以实现一份订单里可以运输多种货物。2.2.5账号实体图和描述:账号用户名密码权限描述:用户名来确定用户的身份和他所能进行的操作。在对订货管理数据库进行操作的时候必须要每个用户名不一样,他们的密码是可以相同的,拥有不同权限的用户对数据库有不用的操作。2.2.6总体的E-R图及描述:订单运输细则客户货物组成提交运输1n1n1n描述:一个客户可以签订多个订单,客户里面包含了唯一标示客户的客户号。在每个订单里面可以有唯一标示该订单的订单号,并且一个订单号只能对应一个客户号。而一个客户号可以对应多个订单号。即一位客户可以签订多个订单。一个订单可以有多个运输细则所构成。在每一个运输细则里都有唯一标示的运输细则号,一个运输细则号对应一种货物,也可以是多个运输细则对应一种货物。这样的话一个订单就可以运送多个货物。3. 逻辑设计这个过程首先将概念结构转换为关系模型。其次是对数据模型进行优化。E-R图向关系模型的转换:客户:(客户号,姓名,电话,邮箱,邮编,收货地址,余额,折扣,开户银行,银行账户)此为客户实体型对应的关系模型。客户的客户号是该关系模型的候选码。订单:(订单号,客户号,收货地址,订单日期,发货日期,运输数量预计寄达时间,运输方式,付款方式)此为订单实体型对应的关系模型。订单号是该关系模型的候选码。一个订单号里面对应一位客户号。运输细则:(运输细则号,货物号,订单号,运输数量,运输价,运送班次,运送车数)此为运输细则实体型对应的关系模型。运输的运输细则号是该关系模型的候选码。一个订单里可以有多个运输细则号。货物:(货物号,货物名,货物保证金,货物数量,货物描述)此为货物实体型对应的关系模型。货物的货物号是该关系模型的候选码。账号:(用户名,密码,权限)此为账号实体型对应的关系模型。账号的用户名是该关系模型的候选码。对不同的用户设置不同的权限,操纵数据的能力不一样。根据本系统的E_R图,将其转换为关系模式如下:1.Customer表:Cnum是主码字段名称数据类型Cnum(客户号)自动编号Cname(姓名)文本Ctel(电话)IntCaddr(收货地址)文本Cban(开户银行)文本Listnum(订单1)Int2.List表:Listnum主码字段名称数据类型Listnum(订单号)自动编号Cnum(客户号)IntPayMethod(支付方式)文本Good1(商品号1)文本Num1(商品数量)文本Good2(商品号2)文本3.Transport表:Tran主码字段名称数据类型Trannum(运输细则号)自动编号Listnum(订单号)IntGoodnum(货物号)IntPay(支付金额)文本Tnum(运送班次)IntTrunum(运送车数)Int4.Goods表:Goodnum主码字段名称数据类型Goodnum(货物号)文本Goodsname(货物名)文本Gprice(保证金)文本Gnum(货物数量)文本4. 数据库的物理设计:数据库的物理设计通常分为两步:(1)确定数据的物理结构。(2)对物理结构进行评价,评价的重点是时间和空间效率。开发环境:本课程设计开发环境:SQL SERVER2008,Windows XP系统。5.程序代码 1.基本表的定义 Customer表创建:Create table Customer ( Cnum smallint primary key, Cname char(50), Ctel char (50), Caddr char(50), Cban char(50), Listnum char(50);List表创建:Create table List(Listnum smallint primary key, Cnum smallint, PayMethod char (50), Goodnum char (50), Num char (50), Foreign key (Cnum) references Customer(Cnum), Foreign key (Goodnum) references Goods(Goodnum); Transport表创建: Create table Transport ( Trannum smallint primary key, Listnum smallint , Cnum smallint, Pay char(50), Goodnum(50) Tnum char(50), Foreign key Listnum references List(Listnum),Foreign key Cnum references Customer(Cnum); Goods表创建: Create table Goods ( Goodnum char (50) primary key, Goodname chanr(50), Gprice char(50), Gnum char (50):2.数据的插入 由于数据插入方法相似,在此,只写Goods表的插入代码 Insert into Goods values(000001,苹果,30,1000); Insert into Goods values(000002,手机,500,10); Insert into Goods values(000003,电脑,10000,150); Insert into Goods values(000001,羽绒服,200,100);3.查询功能查询“张灏”运送的物品的名称,运送保证金SELECT Cname,Goodname,Gpricefrom Customer,Goodswhere Goods.Goodnum = List.Goodnum and List.Cnum = Customer.Cnum and Cname=张灏;查询“张灏”,运送物品的运输费Select Cname, Pay Form Customer, Transport Where Customer.Cnum=List.Cnum and Transport. Trannum =List.List. Trannum and Cname=张灏;4.数据的更新插入客户“上海” Insert Into Customer Values(5, 上海,0101011, 上海一路, 浦东银行,555555); 删除数据 删除Customer中用户张灏的数据 Delete From Customer Where Cname=张灏;更新数据 更新Customer表中张灏中电话号码为000000 Update Customer Set Ctel=000000 Where Cname=张灏;6.系统运行,调试与维护1.基本表创建和数据输入后的结果如下:Customer表List表Transport表Goods表2.查询功能结果3.数据的更新4.数据库的维护 数据库的转储和恢复 数据库的安全性,完整性控制 数据库性能的监督,分析和改造 数据库的重组织与重构造7心得和体会本次课程设计,做得非常仓促,出了许多的错误,但在请教其它同学后基本上解决了问题。本次的课程设计完全是按照数据库的设计的步骤完成的,首先是需求分析,然后是概念结构设计,逻辑结构的设计,数据的物理设计,最后是数据库的实施和数据库的运行与维护。按照数据库的设计步骤,是整个设计很有结构

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论