1数据库系统原理课程设计报告设计题目报刊订阅数据库设计专业班级计算机科学与技术#学号姓名成绩评语:二零一五年七月八日2目录1系统开发概述1.1系统开发背景.......................................................31.1.1系统开发意义...................................................31.2系统功能需求分析...................................................31.3系统性能需求分析...................................................41.4系统数据流程分析...................................................42数据库概念结构设计2.1基本项构思ERD的四条基本原则.......................................62.2设计数据项和数据结构...............................................63数据库逻辑结构设计3.1一般逻辑模型设计..................................................83.2具体逻辑模型设计..................................................94数据库物理结构设计4.1SQLServer数据库及数据表的创建....................................104.1.1数据库创建....................................................104.1.2数据表的创建..................................................114.2数据完整性设计....................................................134.2.1主键约束的创建................................................134.2.2DEFAULT约束的创建.............................................134.2.3外键约束的创建.................................................144.2.4UNIQUE约束的创建..............................................164.2.5CHECK约束的创建...............................................174.3索引的创建........................................................184.4视图的创建.........................................................185数据库的操作5.1数据操纵............................................................215.1.1表结构的修改....................................................215.1.2数据插入.......................................................215.1.3数据更新........................................................235.1.4数据删除........................................................235.2数据查询...........................................................245.2.1单表查询.......................................................245.2.2多表查询........................................................265.3存储过程的创建......................................................295.4触发器的创建........................................................296总结31系统开发概述1.1系统开发背景1.1.1系统开发意义现在随着网络、计算机以及数据库的快速发展,报刊的订阅也不再是传统低效的纸笔记录了,已经转向网络。当人们收集了大量的数据后,应该把它们保存起来进入近一步的处理,进一步的抽取有用的信息。当年人们把数据存放在文件柜中,可现在随着社会的发展,数据量急剧增长,现在人们就借助计算机和数据库技术科学的保存大量的数据,以便能更好的利用这些数据资源为人们服务。本系统就是面向一个企业的报刊订阅管理系统。此系统是一种比较智能化的管理系统,它面向所有企业部门的职工用户,但具有比较高的安全性能。它能够实现报刊订阅的基本功能,包括新报刊信息的录入、订阅、查询等操作以及后台数据库的备份和恢复。用户合法注册后必须输入有效密码才能成功进入此系统,可以进行订阅报刊,查询信息,统计信息等操作。对于非法操作,系统有识别和防护措施。1.2系统功能需求分析本系统主要面向的用户有系统管理员、读者。下面分角色对该系统的不同操作范围做说明。本系统主要有以下功能模块:(1)登陆功能:登陆系统为身份验证登录。分为管理员登录和一般用户登录。分别通过不同的用户名和密码进入报刊订阅管理界面,新的用户需要注册。(2)录入新信息功能:对于管理员,包括新用户信息和新报刊信息的录入功能,信息一旦提交就存入到后台数据库中;普通用户自行注册进行可以修改个人信息。(3)订阅功能:用户可以订阅报刊,系统自动计算所需金额,并显示在界面上;管理员不可订阅报刊,必须以用户身份订阅报刊。(4)查询功能:用户可以查询并显示自己所订阅的信息;管理员可以按人员、报刊、部门分类查询。查询出的信息显示在界面上,并且可以预览和打印出结果。(5)统计功能:管理员可以按用户、部门、报刊统计报刊的销售情况,并对一4些重要的订阅信息进行统计;普通用户可以统计出自己的订阅情况,并且可以预览和打印出结果。(6)系统维护功能:数据的安全管理,主要是依靠管理员对数据库里的信息进行备份和恢复,数据库备份后,如果出了什么意外可以恢复数据库到当时备份的状态,这提高了系统和数据的安全性,有利于系统的维护。1.3系统性能需求分析通过调查,该系统在性能方面有以下需求:①界面美观友好,信息查询灵活、方便、快捷、准确。②数据保密性强,用户对应不同的操作级别。③对用户输入的数据进行过滤,当输入有误时提示用户。④系统最大限度地实现易维护性和易操作性。⑤应有较高的稳定性。⑥系统应有较高的容错性。⑦速度上要求前台要能够很快地响应订阅用户所发出的请求。⑧负荷能力强,防止数据量过大而影响速度。⑨数据备份功能,保证数据在丢失之后可以得到及时的补救。1.4系统数据流程分析下图为该系统的业务流程图5表1-1业务流程图报刊订阅管理系统系统系统管理员用户登陆注册?注册检验选择报刊下订检验与否算帐确认下订订单查询填写信息数据存储订单处理顾客信息查询登陆检验用户信息管理统计订单信息报刊信息管理接受拒绝权限设置管理员的相关操作是后台进行的,管理员只有通过登录才可进入后台管理界面,此界面包括后台登录、管理员信息维护(指定管理员、删除管理员、修改管理员、查询管理员)、注册用户信息维护(删除用户、查询用户)、报刊信息维护(报刊类别管理、报刊管理)、管理员订单信息维护(订单审核、订单列表查看、订单查询)、注销登录等。游客可以进入到主页面,可以浏览与查询报刊信息,但有局限性,不能进行订阅购买等操作。用户只有通过注册,成为会员,在主页面进行登录后,才可以进行订阅购买,也可以进入个人主页面,在此可以进行密码修改和个人信息修改、6查看购物车、用户订单信息维护等操作。2数据库概念结构设计2.1基本项构思ERD的四条基本原则:①原则1(确定实体):能独立存在的事物,例如人、物、事、地、团体、机构、活动、事项等等,在其有多个由基本项描述的特性需要关注时,就应把它作为实体。②原则2(确定联系):两个或多个实体间的关联与结合,如主管,从属,组成,占有,作用,配合,协同等等,当需要予以关注时,应作为联系。实体间的联系可分为一对一、一对多、多对多等三类,在确定联系时还要确定其类型。③原则3(确定属性):实体的属性是实体的本质特征。实体应有标识属性(能把不同个体区分开来的属性组),并指定其中一个作为主标识。联系的属性是联系的结果或状态。④原则4(一事一地):信息分析中得到的基本项要在且仅在实体联系图中的一个地方作为属性出现。2.2经过上述系统功能分析和需求总结,设计如下面所示的数据项和数据结构。管理员表(Administrator):用于存放管理员的数据记录,包括数据项:管理员名、密码。部门表(Department):用来存放部门的相关记录,包括数据项:部门号,部门名。用户表(Users):用于存放注册用户的记录,包括数据项:用户账号、密码、真实姓名、身份证号、联系电话,联系地址,部门号(和部门表有关)等。报刊类别表(NewspaperClass):用于存放初始的报刊类别记录,包括数据项:分类编号、分类名称。报刊信息表(Newspaper):用于存放报刊记录,包括数据项:报刊代号、报刊名称、出版报社、出版周期、季度报价、内容介绍、分类编号(和报刊类别表有关)等。7订单表(Order):用于存放用户下达的订阅报刊的基本信息,包括数据项:订单编号、用户编号(用户表的主码)、报刊代号(报刊信息表的主码)、订阅份数、订阅月数等。2.3根据上面的设计规划出来的实体有部门实体、管理员实体、用户实体、报刊类别实体、报刊信息实体和订单实体。部门实体的E-R图如下图所示:管理员实体的E-R图如下图所示:部门部门号部门名管理员管理员名密码用户实体的E-R图如下图所示:报刊信息实体的E-R图如下图所示:用户身份证号联系电话真实姓名联系地址部门号用户账号密码报刊信息出版周期季度报价出版报社内容介绍分类编号报刊代号报刊名称订单实体的E-R图如下图所示:报刊类别实体的E-R图如下图所示:订订订订订订订订订订订订订订订订订订订订订订报刊类别分类名称分类编号所有实体之间的关系E-R图如下图所示:8处理管理员订单用户订制拥有订阅包含部门报刊报刊类别用户帐号真实姓名密码身份证号联系电话联系地址部门号部门号部门名称管理员名密码分类编号分类名称报刊代号报刊名称出版报社出版周期内容介绍季度订价分类编号订单编号用户账号报刊代号订阅份数订阅月数1M1M1MMNM13数据库逻辑结构设计3.1一般逻辑模型设计关系模型的逻辑结构是一组关系模式的集合。将E-R图转换为关系模型就是要将实体型、实体的属性和实体型之间的联系转换为关系模式。由ERD导出一般关系模型的四条原则;①一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果软换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一端实体对应的关系模式何明,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。②一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该