资源描述
数据库课程设计指导数据库课程设计是电子商务专业的一门实践课。它综合应用数据库原理及应用课程的理论知识于 实践中。内容主要是通过每组学生自选题目,应用 SQL Server2000 设计和开发一个数据库系统。通过本课程的学习,使学生系统的掌握数据库设计和开发的总体概念和结构,获得把实 际管理问题建成计算机管理模型的能力,并具有应用数据库进行组织信息处理和开发信息系 统的初步能力。通过实验培养学生实际应用、开发与维护数据库系统的能力,力求通过实际设计和开发 数据库,使学生更好地理解并掌握数据库的基本原理、基本功能以及操作方法;通过对数据 库的维护,使学生能更加熟练地掌握数据库的维护方法。一、课程设计的主要任务和要求要求学生自选设计题目,在详细的系统调查和理解的基础上,充分运用所学理论知识, 按照数据库设计开发的步骤和方法,完成任务书中提出的各项具体设计任务。并要求文档齐 全,格式规范。要求: 确定预做系统的题目,分组调研,整理调研材料; 学生分组完成实验,整理系统分析、系统设计报告,然后根据报告进行系统实施; 录入原始数据,进行系统测试; 在规定时间内,完成实验报告。主要任务:(1)确定系统的选题范围、调研要点(2)系统需求分析(3)数据库设计(4)系统的实施与开发(5)系统评价步骤和方法选题指南1、选题原则? 选题范围要适当, 既不能规模过小以致于构不成系统, 也不宜范围太大以免在规定时 间内无法完成设计。? 小组人员为 1 人。每人一题,可以出现重题,但内容不能雷同。? 设计报告每一部分要在下一阶段开始前应完成。? 选题应有一定的理论意义和实际应用价值,难度应适中。2、参考题目 图书管理 销售合同管理 教学管理 科研管理系统 供应计划管理 人力资源管理 库存管理 巡查罚单处理系统 房地产管理系统 展会管理系统 药品服务系统 图书交易系统 客户支持系统 工资管理 生产计划管理旅游服务预订系统 酒店管理系统三、参考文献SQL Server2000管理及应用系统开发电子商务网站开发与实现本课程以企业销售合同管理系统为例进行详细介绍课程设计题目:数据库原理及应用课程设计报告专 业: 电子商务 班级学号:学生姓名:指导教师:课程设计工作日自 年月日至年月日第一部分系统分析与设计销售合同是企业经营的重要组成部分,它可以体现一个企业的经营情况和效益。企业销 售合同管理系统可以有效的提高企业管理质量。一、系统调查需求分析简单的说就是分析用户的要求。需求分析是设计数据库的起点,需求分析的结 果是否准确的反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结 果是否合理和实用。需求包括:功能要求、性能要求、可靠性要求、安全保密性要求以及开发费用和开发周 期、可使用资源等方面的限制。其中功能要求是最基本的。二、系统功能分析企业销售合同管理系统的主要任务是实现对企业销售合同的过程管理和成本控制。本系统可完成六个完整的功能。功能模块如图 1所示。企业销售合同管理系统图1功能模块图在功能模块示意图的树状结构中,每一个叶结点都是一个最小的功能模块。合同费用、 合同收帐和合同信息管理模块不能删除数据,这通常是由企业的行政制度和财务制度决定的 企业销售合同管理系统的功能模块之间的关系如图 2所示。提供产图2模块关系图从模块关系图中可以看出,产品信息管理、合同费用管理和合同收帐管理都可以为更完 善的描述销售合同信息提供不同类型的数据。根据不同销售合同数据又可以形成销售合同统 计报表。在本系统中,用户管理模块的功能较简单。在系统初始化时,有一个默认的“系统管理员”用户Admin,由程序设计人员手动的添加到数据库中。Admin用户可以创建用户、修改用户信息以及删除用户;普通用户只能修改自己的用户名和密码。第二部分数据库的设计一、实体关系图首先进行数据库的概念模型设计。可以 Peter Chen提出的ER图为工具 实体关系图是对信息系统中实体及其之间的关系的图形化描述。图3 ER图ER图的检验:提出系统用户最可能提出的查询,分析你设计的ER图能否满足用户的要求。例:1)产品的详细信息2)客户A订购的何种产品3)订购量最多的产品,其客户的分布特点二、数据库逻辑结构设计概念模型不能被计算机识别,需进一步将其转化为逻辑模型,因此要进行数据库逻辑结 构的设计。在设计的过程中可应用关系规范化理论对数据库中的关系进行规范。(一)表的设计(在设计时每份作品的表不能少于5个)数据库包含以下6个表:产品表:Product、合同费用表Cost、合同收帐表In come客户 信息表Client、合同信息表Contract、用户信息表Users1. 产品信息表Product该表用来保存产品信息,结构如表1所示。表1 Product的结构编号字段名称数据结构说明是否主码约束1ProldVarchar 50产口口编号是2ProNameVarchar 50产品名称否非空3ProMarkVarchar 50产品商标否4ProStyleVarchar 50产品型号否5ProU nitVarchar 50计量单位否6Qint数量否大于02. 客户信息表Client表2 Client的结构编号字段名称数据结构说明是否主码约束1Clie ntldVarchar 50客户编号是2Clie ntNameVarchar 100客户名称否非空3AddressVarchar 100客户地址否4Man agerVarchar 50联系人否5Teleph oneVarchar 20联系电话否6MemoVarchar 200备注否3. 合同费用信息表Cost合同费用信息表Cost用来保存合同费用信息。结构如表3所示表3 Cost的结构编号字段名称数据结构说明是否主码约束1CostIdVarchar 50凭单号是2Con tractIdVarchar 50合同编号否参照“合同信息 表”的Contractld 列3CostTypeVarchar 20费用类别(采购 成本、服务费、其他)否4DetailVarchar 50当费用类别选 择“其他”时, 使用Detail字段 来描述。可以是火车票、飞机否票、出租车费、 住宿费、差旅费 等,也可以手动 录入5AmountDecimal15,2费用金额否6ReceiverVarchar 30收款人姓名否7CashierVarchar 30经办人姓名否8CostDateVarchar 10发生日期否9MemoVarchar 200备注否4.合同收账信息表In come合同收账信息表In come用来保存合同收账信息。结构如表 4所示。表4 Income的结构编号字段名称数据结构说明是否主码约束1ReceiptIdVarchar 50发票编号是2Con tractIdVarchar 50合同编号否参照“合同信息 表”的Contractld 列3ReceiptTypeVarchar 20发票类型(增值税、服务费)否4AmountDecimal15,2收账金额否5AmountDecimal15,2费用金额否6CashierVarchar 30经办人姓名否7In comeDateVarchar 10发生日期否8MemoVarchar 200备注否5.建立合同产品信息表,用来保存销售合同中涉及的产品信息。其结构如表5所示表5 ConProduct的结构编号字段名称数据结构说明是否主码约束1Con tractIdVarchar 50合同编号是2ProIdVarchar 50产口口编号3Un itpriceDecimal产品单价15,24Qua ntityint产品数量5Clie ntidVarchar 50客户编号6DeliveryDateVarchar 50交货日期7Additio nalVarchar 500备注6.合同信息表Contract合同信息表Contract用来保存销售合同的基本信息。结构如表6所示。表6 Con tract的结构编号字段名称数据结构说明是否主码约束1Con tractIdVarchar 50合同编号是参照“合同信息表”的 Contractld列2ProIdVarchar 50产口口编号参照“产品信息表”的ProId列3Clie ntidVarchar 50客户编号参照“客户信息表”的 Clientid列3Un itpriceDecimal 15,2产品单价否大于等于04Qua ntityint产品数量否大于等于05AmountDecimal 15,2费用金额否6CashierVarchar 30经办人姓名否7In comeDateVarchar 10合同签订日期否8StatusTi nyi nt合同状态(1 签订 合同,2 实施合同,3兀成合同)9Emp nameVarchar 50负责人姓名否10DeliveryWayVarchar 50交货方式否11DeliveryDateVarchar 50交货日期否12SettleWayTi nyi nt结算方式(1-支票,2- 现金,3-签单,4-汇款)否13LastdayVarchar有效期限否14Additio nalVarchar 500备注否7.用户信息表Users用户信息表Users用来保存系统用户信息。结构如表 7所示。表7 Users的结构编号字段名称数据结构说明是否主码约束1User nameVarchar 40用户名是2PwdVarchar 40密码否非空说明各表中需要建立的主码约束、参照约束及其他约束条件。(二)视图的设计根据查询的需要,设计视图,并指出各视图的主要作用。 例:基于合同信息表和客户信息表,构建大宗客户合同视图表5 ConClient的结构编号字段名称数据结构说明条件1Con tractIdVarchar 50合同编号合同产品数量在2Clie ntldVarchar 50产口口编号1万件以上2Clie ntNameVarchar 100客户名称4Man agerVarchar 50联系人5Teleph oneVarchar 20联系电话3Un itpriceDecimal 15,2产品单价4Qua ntityint产品数量6DeliveryDateVarchar 50交货日期7Additio nalVarchar 500备注(三)触发器与存储过程的建立根据应用环境,请设计一些必要的存储过程与触发器,并说明其主要目的。例:当合同信息表Con tract中的Amou nt (费用金额)发生变化时,合同收账信息表In come中的Amou nt (费用金额)也将自动变化,因此需要建立触发器。第三部分数据库的创建、创建表(可直接抓取截图)例:创建表product create table product(ProId Varchar(50) Primary Key,ProName Varchar(50) NOT NULL,ProMark Varchar(50),ProStyle Varchar(50),ProUnit Varchar(50)二、创建视图三、创建存储过程四、创建触发器五、数据库维护管理 请设计数据库的备份及安全策略第四部分 系统应用与评价一、从客户应用的角度出发,对系统进行几个典型查询。1.例如:请统计单笔合同费用金额最高的合同编号,费用金额及其客户名称。(查询语句可直接截图)SELECT ContractId, max(amount), ClientName FROM Contract, Client WHEREContract.Clientid=Client.Clientid二、测试存储过程与触发器的建立是否正确。例:当合同信息表Con tract中的Amou nt (费用金额)发生变化时,观察合同收账信 息表In come中的Amou nt (费用金额)是否自动变化。三、对设计的数据库系统进行简单的总结和评价。
展开阅读全文