报刊订阅管理系统。
随着社会不断的发展,人们的生活水平越来越高,对知识的和对时事的渴求也越来越高,人们希望能够方便快捷地订阅各种报刊杂志。但是各种各样的报刊名目和详细信息以及订阅,为相关企业的管理造成很大的麻烦。因此网上订阅成为不可或缺的一部分。
本系统就是面向一个企业的报刊订阅管理系统。此系统是一种比较智能化的管理系统,它面向所有企业部门的职工用户,但具有比较高的安全性能。它能够实现报刊订阅的基本功能,包括新报刊信息的录入、订阅、查询等操作以及后台数据库的备份和恢复。
用户合法注册后必须输入有效密码才能成功进入此系统,可以进行订阅报刊,查询信息,统计信息等操作。对于非法操作,系统有识别和防护措施。
设计一个报刊订阅应用系统,使系统满足以下功能和需求:
a一个订户可订多种报刊;一种报刊可被多个用户订阅;订单只能订阅现有报刊目录内容;
b投递时,必须根据订单的情况进行投递,不得超出订单的订阅品种、数量;
2)、系统功能包括:
a 订户管理:订户添加、修改、删除;
b目录管理:目录添加、修改、删除;
c 订单管理:完成订户订阅数据的管理(包括添加、修改、删除);
d订单查询:按订户或者订单号查询订单详细情况;
e 统计查询:按报刊目录统计各类报刊的订阅数量及金额;
f 表单生成:根据统计查询结果导出统计信息到文件(.xls)
访问数据库时需要输入登陆帐号和密码。在数据库内设有管理员表,登陆系统时会要求输入管理员帐号和密码。登陆模块根据输入帐号和密码查管理员表,查到匹配记录则允许其登陆系统。
管理员帐号和密码可以在系统中添加和修改。
在管理系统相关的表之间,有较强的关联性。为了实现一致性的需求,各个表之间均建立起了相应的一致性约束。
根据报刊订阅管理系统的要求,为保持数据的完整性,采用了数据库的事务机制,防止出现操作故障引起的数据不一致。
2.1设计方法和步骤。
基本项构思erd的四条基本原则:
原则1 (确定实体):能独立存在的事物,例如人、物、事、地、团体、机构、活动、事项等等,在其有多个由基本项描述的特性需要关注时,就应把它作为实体。
原则2 (确定联系):两个或多个实体间的关联与结合,如主管,从属,组成,占有,作用,配合,协同等等,当需要予以关注时,应作为联系。实体间的联系可分为一对。
一、一对多、多对多等三类,在确定联系时还要确定其类型。
原则3 (确定属性):实体的属性是实体的本质特征。实体应有标识属性(能把不同个体区分开来的属性组),并指定其中一个作为主标识。联系的属性是联系的结果或状态。
原则4(一事一地):信息分析中得到的基本项要在且仅在实体联系图中的一个地方作为属性出现。
2.2 e-r图设计。
经过上述系统功能分析和需求总结,设计如下面所示的数据项和数据结构。
管理员表(adminuser):用于存放管理员的数据记录,包括数据项:管理员名、密码。
部门表(department):用来存放部门的相关记录,包括数据项:部门号,部门名。
用户表(users):用于存放注册用户的记录,包括数据项:用户账号、密码、真实姓名、身份证号、联系**,联系地址,部门号(和部门表有关)等。
报刊类别表(news*****class):用于存放初始的报刊类别记录,包括数据项:分类编号、分类名称。
报刊信息表(news*****):用于存放报刊记录,包括数据项:报刊代号、报刊名称、出版报社、出版周期、季度**、内容介绍、分类编号(和报刊类别表有关)等。
订单表(order):用于存放用户下达的订阅报刊的基本信息,包括数据项:订单编号、用户编号(用户表的主码)、报刊代号(报刊信息表的主码)、订阅份数、订阅月数等。
根据上面的设计规划出来的实体有部门实体、管理员实体、用户实体、报刊类别实体、报刊信息实体和订单实体。
部门实体的e-r图如下图所示管理员实体的e-r图如下图所示:
用户实体的e-r图如下图所示报刊信息实体的e-r图如下图所示:
订单实体的e-r图如下图所示报刊类别实体的e-r图如下图所示:
所有实体之间的的关系e-r图如下图所示:
关系模型的逻辑结构是一组关系模式的集合。将e-r图转换为关系模型就是要将实体型、实体的属性和实体型之间的联系转换为关系模式。
由erd导出一般关系模型的四条原则;
一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果软换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。
如果与某一端实体对应的关系模式何明,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。
一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。
3个或3个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系项链呢的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。
根据以上原则将e-r图转换成的关系模式如下:
部门(部门号,部门名称)
用户(用户账号,密码,用户真实姓名,联系**,联系地址,
管理员(管理员名,密码)
报刊类别(分类编号,分类名称)
报刊(报刊代号,报刊名称,出版报社,出版周期,每月订价,内容介绍,
订单(订阅份数,订阅月数,订阅总额)
使用本系统,首先它会自动弹出“欢迎使用本系统”的欢迎界面,然后跳转到用户身份验证界面,选择管理员的身份进入,有录入(录入报刊信息、录入用户信息),查询,统计(统计用户、统计、报刊订单),系统维护(备份数据库、恢复数据库),注销,退出等菜单可使用,没注册的用户可进入注册界面进行注册,然后返回登录界面登录,进入后有欢迎界面,有订阅、查询、统计、修改、注销、退出等菜单可使用。
4.1设计索引。
我们可以在最经常查询的列上建立索引以提高查询效率。
而在这个系统中,我们经常要按用户账号,按报刊代号,按部门查询,所以,我们可以为这三个表建立索引,建立所以的sql语句如下,这几个都是字符型。
create unique index usernum on users(userno)
create unique index departnum on department(depnumber)
create unique index newsnum on news*****(newsno)
4.2 设计表间关系。
4.3完整性设计。
列出主要字段完整性的字段名、完整性约束条件;列出记录完整性约束及其约束条件;列出参照完整性表。
主要字段的完整性字段名和参照完整性表可以参照上图各个表之间的关系来看。
比如建立报刊表news*****时,要求报刊代号在100~99999之间,报刊名称和每月定价不能取空值,报刊类别是报刊类别表的主键,则。
create table user
userno char(10) constraint c1 check(newsno between 100 and 99999),newsname char(40) constraint c2 not null,classid int(4) constraint c3 not null,publish char(150),pubperiod char(30),content char(4000),price float(8) not null,constraint c4 foreign key(classid) references news*****class(classid) )
因为这个报刊订阅系统由多个用户使用,分为管理员和用户,他们拥有不同的权限和安全性控制。所以在权限设置方面,采用管理员和用户分别使用用户名和密码进入他们能使用权限范围里的界面。
管理员登陆系统后,可以添加、修改用户和报刊的信息,可以对订单进行查询和统计,并且可以把查询统计的结果进行预览和打印出来,还要对数据库系统进行维护,适时备份数据库,一旦数据库遇到问题,可以恢复到最近备份的状态,减少不必要的损失。
用户登录,用户使用该系统前需要进行注册,他应该是该企业某个部门下面的员工,所以他需要输入他的部门号等信息,注册成功后,登录到系统,可以修改自己的信息还有订阅报刊,但由于权限的限制,他只能查看和统计自己的订单信息。
pb课程设计
数据库开发工具 课程设计选题指导。1 目的 课程设计是 数据库开发工具 实践环节的极为重要的一部分,其目的是。1 使学生初步掌握利用pb进行应用程序设计的基本方法,加深对pb编程环境和方法的理解,巩固已经学到的编程技术,提高分析解决实际问题的能力。2 培养学生能够应用数据库系统原理设计出易于查询和操...
pb课程设计
数据库技术 课程设计选题指导。1 目的 课程设计是 数据库技术 实践环节的极为重要的一部分,其目的是。1 使学生初步掌握利用pb进行应用程序设计的基本方法,加深对pb编程环境和方法的理解,巩固已经学到的编程技术,提高分析解决实际问题的能力。2 培养学生能够应用数据库系统原理设计出易于查询和操作的合理...
学生成绩管理系统pb课程设计
the general staff 1 employees in addition to vice president,director,manager,deputy manager and special positions outside the contract period to resig...