数据库管理系统毕业论文--企业管理数据库设计

更新时间:2024-05-20 04:11:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数据库课程论文

姓名:11111111111 学号:11111111111 班级:11111111111 专业:1111111111111111 学期:111111111 任课教师:11111111111

数据库系统

【摘要】:数据库系统是针对企业的工资管理业务进行计算机处理而开发的应用软件。该系统由系统维护、输入、查询、修改、输出、统计等子模块组成,功能基本涵盖普通企业的工资管理业务范围。企业应用本系统后,可以有效的提高企业管理水平。本文从市场调查、需求分析、开发平台选择、系统模块建立、数据库设计、功能模块编程实现及软件测试等方面阐述了本应用系统的设计过程。为便于说明,文中绘制了 程序结构框图、数据流程图和部分界面图。

数据库

(1)数据库的应用背景

现代的社会经济高速发展,信息化程度也不断的深入,企业的传统全力己愈来愈不能满足总经理的需要。现今,人们的人才需要意识、科技意识己经有了很大的提高,对于用纸张来记录档案已经显得很麻烦;此外,各种经营单位为了提高企业的管理、同时减轻自己日趋繁重的工作量,纷纷进行用电脑系统来记录档案。

随着科技发展和社会进步,尤其是计算机大范围的普及,计算机应用逐渐由大规模科学计算的海量数据处理转向大规模的事务处理和对工作流的管理,这就产生了以台式计算机为核心,以数据库管理系统为开发环境的管理信息系统在大规模的事务处理和对工作流的管理等方面的应用。而这次课程设计的内容就是设计一个干部档案管理系统,模拟企业的管理工作。

数据库原理已成为软件工程和计算机科学与技术专业的一门重要的必修专 业课程,也是现代计算机软件技术人员所必须掌握的基本理论和技术。 本课程着重介绍数据库系统的基本原理和设计方法,特别使目前应用最为广 泛的关系数据库系统的原理和相关技术, 使学员在掌握数据库基本原理的基础上, 学会关系数据库应用系统的设计技术,培养应用数据库技术解决计算机应用中实 际问题的能力,并为今后从事数据库理论教学和应用系统的开发工作打下良好的基础。

随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现工资的数据库管理势在必行.人员方面:可随时通过工资管理员根据本人需要查阅工资情况,每月可以领取相应的工资报表,以进行检查和核实.财务人员方面:实现工资数据输入,查询,修改和打印的计算机化管理,减轻工作量,使 工资

管理更加的规范化. 单位方面: 实现财务管理系统的统一, 开发完本系统后, 可使财务管理更具有统一性,提高管理效率,增强单位凝聚力。

现代的社会经济高速发展,信息化程度也不断的深入,企业的传统全力己愈来愈不能满足总经理的需要。现今,人们的人才需要意识、科技意识己经有了很大的提高,对于用纸张来记录档案已经显得很麻烦;此外,各种经营单位为了提高企业的管理、同时减轻自己日趋繁重的工作量,纷纷进行用电脑系统来记录档案。

随着科技发展和社会进步,尤其是计算机大范围的普及,计算机应用逐渐由大规模科学计算的海量数据处理转向大规模的事务处理和对工作流的管理,这就产生了以台式计算机为核心,以数据库管理系统为开发环境的管理信息系统在大规模的事务处理和对工作流的管理等方面的应用。而这次课程设计的内容就是设计一个干部档案管理系统,模拟企业的管理工作。

数据库原理已成为软件工程和计算机科学与技术专业的一门重要的必修专 业课程,也是现代计算机软件技术人员所必须掌握的基本理论和技术。 本课程着重介绍数据库系统的基本原理和设计方法,特别使目前应用最为广 泛的关系数据库系统的原理和相关技术, 使学员在掌握数据库基本原理的基础上, 学会关系数据库应用系统的设计技术,培养应用数据库技术解决计算机应用中实 际问题的能力,并为今后从事数据库理论教学和应用系统的开发工作打下良好的基础。

随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机 实现工资的数据库管理势在必行.人员方面:可随时通过工资管理员根据本人需 要查阅工资情况,每月可以领取相应的工资报表,以进行检查和核实.财务人员 方面:实现工资数据输入,查询,修改和打印的计算机化管理,减轻工作量,使 工资管理更加的规范化. 单位方面: 实现财务管理系统的统一, 开发完本系统后, 可使财务管理更具有统一性,提高管理效率,增强单位凝聚力。

系统需求分析

本项目的名称是工作管理系统,设计的对象是企业管理方,主要用户是上层管理者,几乎所有功能操作以及对系统的维护工作都是面向他们的。因此设

计项目的时候以上层管理者的立场、工作重心和工作需求出发,系统的外观界面也是针对管理者而设计。

根据要求,主要功能包括录入新的员工、浏览查询、报表打印、基本消息更改功能。

系统的输入设备由一般的输入设备(即键盘、鼠标)组成,主要是从系统的弹出对话框输入账户的数据信息。

系统的输出主要以对话框、编辑框以及列表显示于屏幕。

系统功能分析

工资管理系统包括录入、浏览查询、报表打印、员工基本信息更改,详细的功能描述如下:

(1)信息查询功能主要包括对员工信息的查询、工资现状信息的查询。为了对员工了解,这时,我们可以使用浏览查询功能,对已存在的员工进行查询,并讲其详细信息显示在系统的界面。为了对系统的设计和后面的维护工作能够顺利进行并且方便进行数据、功能的测试,员工信息查询这个模块的实现尤为重要,是整个系统开发项目的首要任务。

(2)新员工录入功能是对新增的员工信息录入,然后能跟上人事的变动情况。并对整个工资管理操作进行更新的信息。

(3) 基本信息更改功能就是对系统的某个员工工资、考勤等相关情况进行更改。

功能模块设计

根据功能描述,干部档案管理系统可以分为5个模块,每一个模块有提供了更具体的功能。干部档案管理系统的功能模块图如图2-1所示。

工资管理 新信息录入 浏览信息 查询信息 基本信息更改 近期照片变更 资料的更新 了解员工的情况 专长、考勤情况的查询

数据流图:我们对教学管理手工系统的流程进行分析后,对新的教学管理系统流

程进行了整理,得到了如图所示的数据流图

登录并维护教师档案 登录并维护学生信息 教师档学生信新生注课程信系统用户数授课信授课信管理人员登录并添加教师学生信 登录并维护课程信息 登录并维护用户帐户 登录并维护学生成绩 登录并维护学生选课 教师 学生 有关人员 查询要求 结果 查询留言 教学管理系统数据流

开发工具与运行环境

(1) 开发工具.

VFP6.0 为集成开发环境提供了项目管理器,设计器,生成器和向 导机制等,使其成为强有力的数据库开发工具. 1) 项目管理器. 2) 设计器. 3) 生成器. 4) 向导. (2) 运行环境

(3) 硬件环境: PⅡ350MHz 以上处理器,16MB 以上内存,一般需 240MB 硬盘空间.

软件环境:Windows 95 及以上的操作系统支持. 二、数据库信息要求和关系数据模型

E—R图

姓名 班级 学号 姓名 授课教师 课程 成绩 职称 教师 学生 编号 出生日期 所教专业 性别 课程名 编号 出生日期

管理员 学生 内容 交流论坛 教师 关系数据模型:

关系数据模型:

时间

本系统包括5张表:学生表﹑课程表﹑学生选课表﹑教师表、授课表。下面分别对这些表的结构进行具体介绍。

学生表Student 学号Sno 200215121 200215122 200215123 200215125 课程表Course 课程号Cno 1 2 3 4 5 课程名Cname 数据库 数学 信息系统 操作系统 数据结构 先行课Cpno 5 1 6 7 学分Ccredit 4 2 4 3 4 姓名Sname 李勇 刘晨 王敏 张立 性别Ssex 男 女 女 男 年龄Sage 20 18 19 19 所在系Sdept CS CS MA IS (a)

6 7

学生选课表Sc 学号Sno 200215121 200215121 200215121 200215122 数据处理 PASCAL语言 (b)

6 2 4 课程号Cno 1 2 3 2 成绩Crade 92 85 88 90 80 200215122 3 (c)

教师表(teacher)

教师编码num 2002161 2002162 2002163 2002164

授课表(teaching) 教师编码num 2002161 2002164 (e)

三、

教师姓名name 陈俊 李颖 金明 杨丽 (d)

性别sex 男 女 男 女 出生日期birthday 1950.4 1956.7 1963.2 1952.9 课程名Cname 数学 PASCAL语言 数据库的操作和应用要求

数据操作要求:能保证数据库的完整性、安全性,能够并发控制,无插入异

常、更新异常等问题出现。

处理方法:

以教师信息管理模块为例,该模块要实现对教师基本信息的添加,删除,修改等功能。对教师的添加,删除,修改是对教师的相应信息进行相应的改变。

信息查询模块包含的功能有:按教师基本信息查询;按学期和课程名称查询教师的授课情况;按教师姓名查询他的全部教学活动等等。查询时根据给出的信息在数据库中进行查找,显示出查询者想要的信息。

处理流程:

系统流程就是用户进入教学管理信息系统后的工作过程。由于本系统对不同的用户账号设置了不同的操作权限,因此不同用户的操作流程有所不一样。 本系统的操作流程主要分为用户登录操作和业务操作两部分。用户登录操作主要是对用户的账号(包括用户名和密码)进行身份验证,通过验证的进入系统操作界面,未通过的给出错误提示。业务操作根据账号的权限允许或限制用户的行为。

整个系统的流程如图所示

启动程序 重新登录 验证失败 用户登录 ? ? ? ? ? ? 教师基本信息查询 论文信息查询 奖惩记录查询 课程信息查询 授课信息查询 修改自己的用户密码 普通用户 用户权限 系统管理员 ? 进行所有信息的查询、保存和维护操作 系统功能模块: ? 管理所有用户账号 本系统主要包括教师基本信息管理、学生信息管理、交流信息管理、课程信息管理、成绩信息管理等模块,另外还包括进行系统管理的一些辅助模块。其示意图如下:

选课信 息管理

课程内容 课程编号 总课程表 信息查询 信息修改 信息删学生信息 教师信息 查询信息 管理教师信息 新生注册 教师录入分数 成绩查询 学生评语 教师评语 管理员评论 教师互评 教师信息管理 教学管理系统 学生信息管理 成绩管理 交流论坛 现

学生选课 学 生课表 教师课表

数据库的创建语句

(1) 建立一个学生表student

Create table student ( Sno char (9) primary key, Sname char (20) unique, Ssex char (2), Sage smallint, Sdept char (20) );

(2) 建立一个课程表Course Create table Course ( Cno char (4 ) primary key, Cname char (40) , Cpno char (4) , Ccredit smallint ,

Foreign krey (Cno) references Course(Cno) );

(4) 建立学生选课表SC Create table SC( Sno char (7), Cno char(4),

查询方式以检测这种行动。与数据泄漏密切相关的是在数据信息安全与技术?2011.06?23?技术探讨·Technology and Studyi库出现错误时不适当地处理这些错误,许多应用程序显示了详

细的信息。这些错误信息能够泄漏有关数据库结构信息。

SQL Server数据库的系统漏洞的产生的主要原因都是由

于程序员不正确和不安全的编程引起的。加上程序员的水平

及经验的参差不齐,这部分程序员在编写代码的时候,没有对

用户输入数据的合法性进行判断,使应用程序存在安全隐患。

在使用时,由于用户的不正确配置就有可能导致漏洞产生。认

识和了解SQL Server数据库和系统安全漏洞,分析漏洞产生

的原因,找出SQL Server数据库的漏洞,是为了增加数据库

的安全,这是解决SQL Server数据库安全的理论基础2.数据库的安全设置在设计SQL Server数据库时,要考虑数据库的安全机制,

安装时要注意整个系统的安全设置,明确操作系统的用户权

限,使用文件驱动程序对文件操作进行过滤,即对数据库文件、

日志文件、备份文件等各操作事项限定为数据库进程和指定进

程进行操作,其余的进程为禁止操作,这时数据库的安性就取

决于操作系统本身、数据库系统本身和网络传输的安全性。随

着B/S模式应用开发的发展,SQL INJECTION的攻击测试

不可避免,很多大型的网站和论坛都相继被注入。目前网站

一般使用SQL Server作为后台数据库,正因为如此,很多人

开始怀疑SQL Server的安全性。其实SQL Server各个版本

的数据库都已经通过了美国政府的C2级安全认证——这是

该行业所能拥有的最高认证级别,所以使用SQL Server还是

相当的安全的。当然和Orcal、DB2等还是有差距,但是SQL

Server的易用性和实用性还是能被广大的用户所认同,那如

何做好数据库的安全设置是解决问题关键。2.1注意操作系统的安全设置主要方法有:1)限制不必要的用户,禁用GUEST账号,

并为amdinistrator用户账号更名并增中密码;2)设置系统登

录中的各个选项;3)使用NTFS格式分区;4)修改注册表关

闭默认共享服备;5)关闭不需要的服务;6)关闭不必要的端

口,最好不要使用远程管理软件和不信任的服务器软件等。2.2安装最新SQL Server数据库补丁包为了保证数据库的安全性,一个常用的、最有效的方法是

到微软官方网站上及时更新SQL Server的service pack以

及其它已发布的安全更新。2.3修改默认的1433端口,并且将SQL Server隐藏这样能禁止对试图枚举网络上现有的 SQL Server 客户

端所发出的广播作出响应。另外,还需要在TCP/ip筛选中将

1433端口屏蔽掉,尽可能的隐藏SQL Server数据库。这样子

一但让攻击创建了SQL Server的账号,也不能马上使用查询

分析器远程登陆来进行下一步的攻击。2.4删除有安全问题的SQL过程SQL INJECTION往往在Web CODE中产生。攻击者

一旦确认了网站存在SQL INJECTION漏洞,肯定有一步操

作步骤就是测试网站的SQL Server使用者具有多大的权限。

一般都会借助SELECT IS_SRVROLEMEMBER('sysadmin

'),或者SELECT IS_MEMBER('db_owner'),SQL Server

就会提示了错误信息,从该信息中即可知道一些敏感信息)等

语句进行测试。2.5删除危险函数SQL Server为了方便操作Excel、Access、远程服务器等

数据库,增加了OPENDATASOURCE和OPENROWSET

等函数,正是这些函数增加了数据库的危险性。黑客可以利用

该函数进行数据库挂马,从而获得数据库,以及服务器的控制

权限。如OPENDATASOURCE 的用法:SELECT*FROM

OPEN-DATASOURCE ('SQLOLEDB', 'Data

Source=ServerName; User ID=。MyUID; Password =

MyPass') .Northwind. dbo.Categories黑客完全可以用此

语句获得注入数据库的库名、表名、列名、字段值的所有信息。2.6删除不安全的扩展存储过程xp_cmdshell是一个非常危险的扩展存储过程,它可执行

dos命令,危险的不只是这个,还有Xp_regaddmulti-string 、

Xp_regdeletekey 、Xp_regdeletevalue等都是删除的对象。3.数据库的管理策略为保证数据库安全,安全管理策略从几个方面加以分析。3.1访问控制访问控制(access control)是对用户访问数据库各种资

源的权力控制。SQL Server对用户的访问控制分为两阶段:

一是安全账户认证,二是访问许可认证。在安全账户认证阶

段,Windows操作系统或SQL Server对用户登录进行认证,

如认证成功,用户可连接到SQL Server,否则数据库服务器将

拒绝用户的连接请求。访问许可确认指的是用户成功连接到

SQL Server后,系统根据数据库中保存的与服务器登录标识

相对应的用户帐户来判断他们是否拥有对数据库的访问许可。

在建立SQL Server登录后,需要将许可授予用户或用户

组,使他们能够在数据库中执行任务。默认条件下,数据库内

只有一名特殊的用户——DBO,用以表示数据库所有者。

它?24?2011.06?www.infosting.orgTechnology and Study·技术探讨对数据库及其对象拥有完全控制权。要使用户拥有对数据库

的访问权,管理员必须明白无误地将数据库许可赋予合法的登

录者。区分好SQL Server的登录和数据库用户许可,管理员

可以方便地将服务器上某一个数据库的访问权赋予某一用户,

同时限此用户访问服务器上的其他数据库。有了访问控控制,

SQL Server可以防止非法的用户进入。3.2数据库许可合法用户进入服务器和数据库后,对数据对象进行操作还

要通过数据库访问许可机制来控制。首先,可通过数据库许可

中的语句许可达到限制数据库用户执行某些Transact-SQL

语句(如create table、create view等)的目的。其次,可通

过数据库许可中的对象许可达到限制数据库用户执行数据库

对象某些任务(如select、insert、DRI等)的能力。但要注意

的是,在应用过程中一定要分清每个许可的三种状态的区别。3.3使用系统存储过程建立数据安全性作为SQL Server数据库管理员,在某些情况下需要赋予

用户在数据库中执行一个或多个任务能力,但出于安全性方面

的考虑,你可能无法或不愿意赋予对那个数据源的用户许可。

如你想让某一用户具有select许可,而不拥有delete许可,此

时就可通过建立存储过程达到目的,从而保护了数据的安全。3.4使用视图建立数据安全性用户创建数据库的目的就是使用数据,而这些数据都是通

过基本表来体现。但对于一名SQL Server管理员而言还应

清醒地认识到,在一个数据库中可以包含多张表,可是用户仅

使用某些表中的局部数据。若此时SQL Server管理员赋予

用户能够访问这些表的许可,形成用户访问区域过大,从而造

成用户对数据库中数据安全的威胁。为了避免这一情况,可以

通过建立数据视图的方式达到数据安全的目的。3.5使用服务器角色建立数据安全性在SQL Server系统中,为了便于管理增加了同时能为多

个数据库用户的登录和许可进行设置的能力,这种能力系统

是通过角色来体现。服务器角色是一类特殊的功能的集合,

拥有执行某些服务器操作的权力。服务器角色中包括了SQL

Server登录,因为它们所拥有的许可在本质上是作用于整个

服务器的,而不是单独哪个数据库。在SQL Server系统中提

供了7种预定义服务器角色,我们使用时还应注意数据库创建

者、进程管理员、安全管理员、服务器管理员、设置管理员、系统

管理员等角色的使用。当我们将某一用户添加到这些角色中

时,我们要慎重考虑,因为这些角色会给数据带来潜在的威胁。3.6使用数据库角色建立数据安全性此角色用于一次设置多个数据库用户对数据库的访问许

可,它是直接面对数据的,若许可权限配置不当则直接威胁数

据库中的数据,如PUBLIC(公共)角色,在默认情况下,所有

的SQL Server登录都是这个组内的成员。作为管理员,在对

公共角色赋予许可时必须非常小心谨慎。3.7数据备份在数据库日常管理过程中,进行数据备份为首要的工作。

当服务器或SQL Server数据库系统发生崩溃时,其原先的数

据很难恢复,因为SQL Server数据库不像Visual Foxpro等

数据库可以直接拷贝数据库文件,前者必须要有备份策略才能

安全恢复。因此,数据库应该安装在所属单位内部网的安全区

域中,不要直接连接到 Internet。另外,在处理异常故障时应

实施异机备份策略,采用适当有效的备份措施,保护数据安全。3.8数据库加密数据库加密要求数据库密码系统将明文数据加密成密文

数据,数据库中存储密文数据,查询时将密文数据取出解密得

到明文信息,即便硬件存储失窃也不会泄漏数据,这样就大

大提高了数据库系统的安全性,当然成本也随之提高。对于

网络层面上的攻击,数据库主要采用安装防火墙、进行入侵检

测等方式来提高其安全性能。防火墙阻挡来自外部的不可信

连接。入侵检测系统一般部署在防火墙后,通过网络截包解析

或者分析日志来检测网络中和主机上的异常。4.结束语由于SQL Server数据库安全事关各种因素,为尽可能保

证SQL Server数据库系统的安全,除了注意以上的各种安全

配置和加强安全管理策略外,还应加强内部管理人员的安全培

训和完善安全管理制度。参考文献[1] 杨苏.SQL Server 常见的安全配置.改革与开放,2010

本文来源:https://www.bwwdw.com/article/uji7.html

Top