公务员期刊网 精选范文 数据库系统概论范文

数据库系统概论精选(九篇)

前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的数据库系统概论主题范文,仅供参考,欢迎阅读并收藏。

数据库系统概论

第1篇:数据库系统概论范文

关键词 需求分析 实体及属性 概念模型

中图分类号:TP315 文献标识码:A

1托盘共用信息管理平台

在托盘共用系统中,托盘属于托盘运营商所有,托盘的质量控制、维护修理均由托盘运营商负责,托盘使用企业不必拥有托盘,只需按照租赁合同使用托盘,有利于节约使用企业自备托盘的成本。托盘运营商建立托盘租赁和回收点,负责托盘的租赁、回收与维护,并根据托盘租赁需求预测,向生产企业订购托盘。

目前由于托盘运营商经常会因信息滞后,无法预测或统计相关企业对托盘的需求量,而使托盘脱销或积压,造成较高的托盘的库存成本。同时无法及时了解托盘在运输过程中的具置,完整回收随商品发往各地的空托盘,或者托盘随着产品的运输一次性使用后就被丢弃,造成资源的浪费。在空托盘的回收方面,由于无法与邻近的回收点充分共享信息资源,经常会产生回程空载上的浪费,不能充分利用托盘。很多因信息滞后的弊端使得托盘运营这项产业初期投入高,回收低下,出现运营困境。进一步讲,托盘共用系统中流动着多种托盘物流,如用户与托盘租赁和回收点之间的空托盘物流、回收点之间的库存托盘物流、用户之间随货物流动的托盘物流及用户之间的转租托盘物流等。各类托盘物流的高度流动性,使托盘共用系统的管理变得十分复杂,于是以互联网为基础建立托盘信息管理平台就成为了对托盘共用系统进行有效管理的必然选择。

2需求分析

2.1引言

进行系统设计,首先要对系统的现状进行分析。根据系统的目标、需求和功能,制定和选择一个较好的系统方案,从而达到一个合理的优化系统。随着经济的发展和社会的进步,大部分的地区都会出现托盘共用的情况,建立一个托盘共用信息系统,是为了解决人工手动管理托盘信息在实践的问题,从而达到系统化、规范化、标准化的水平。该系统的建立不但给管理者带来了方便,也节省了工作时间从而提高了工作效率。

在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块。这样,就把一个大的系统分解成了几个小系统。这里把系统的层次划分为了四个部分:托盘维护,管理人员信息管理,托盘租赁管理,信息查询。能够实现以下功能: (1)进行新托盘入库、现有托盘信息修改以及删除;(2)能够实现对顾客基本信息的查询和编辑管理;(3) 能够进行当前财务以及人力状况的查询;(4) 能够进行租赁信息的查询功能。

2.2需求分析阶段的目标与任务

2.2.1处理对象

托盘信息:托盘条形码,托盘类型,托盘名称,托盘租赁次数,租赁价格,货位,存储数量,入库时间,供应商编号。

托盘公司信息:点编号,点名称,e-mail,地址,网址,电话,管理员,公司名称。

顾客:顾客编号,顾客名称,性别,租赁次数,顾客类型,电话,e-mail,注册日期。

托盘借还:租赁编号,实际归还时间,托盘条形码,租赁时间,验收员编号,是否归还,预计归还时间,顾客编号。

供应商档案:供应商编号,供应商公司名称,供应商类型,电话,e-mail,备注。

托盘供应:供应单编号,托盘条形码,采购员编号,供应数量,供应价格,供应日期。

托盘验收:验收单编号,托盘条形码,验收员编号,货位,接收数量。

管理员:管理员编号,名称,密码。

2.2.2处理功能及要求

(1)能够存储一定数量的托盘信息,并方便有效的进行相应的托盘数据操作和管理,这主要包括:①托盘信息的录入、删除及修改。②托盘信息的多关键字检索查询。③托盘的出借、返还及超期罚款或丢失赔偿。

(2)能够对一定数量的顾客、管理员进行相应的信息存储与管理,这其中包括:①顾客信息的登记、删除及修改。②管理员信息的增加、删除及修改。③顾客资料的统计与查询。

(3)能够提供一定的安全机制,提供数据信息授权访问,防止随意删改、查询。

(4)对查询、统计的结果能够列表显示。

3 系统概念模型设计

在托盘信息系统中,涉及到包括托盘供应商、托盘租赁公司、顾客在内的供应链,需要实现托盘信息的录入、删除及修改,托盘信息的多关键字检索查询以及托盘的出借、返还及超期罚款或丢失赔偿情况。因此初步构建整体E-R图1所示。

进一步地对M:N的联系转换为相应的连接实体,建立各实体的主键和外键,建立各实体间的联系并且设置必要的完整性约束。绘制最终包括全部的实体、主要的属性,标明主键和外键,建立各实体间完整E-R图。

参考文献

[1] 王珊,萨师煊.数据库系统概论[M].高等教育出版社,2006.

第2篇:数据库系统概论范文

关键词:高校;计算机专业;实例;数据库应用

中图分类号:G642 文献标识码:A文章编号:1009-3044(2007)05-11454-03

1 引言

《数据库原理及应用》这门课的主要任务是通过课堂教学和实践指导,使学生较全面地掌握数据库系统的基本概念、基本原理和基本方法,初步具备使用数据库技术解决实际问题的能力。当前国内高校计算机专业教育教学普遍存在以下基本情况:1、学生人数众多,实验室开放时间有限,条件不足。2、教师和学生的比例差距较大,指导并不充分。3、存在“重视理论大于实践;重视课本大于动脑”的现象,常常表现在SQL语句写的非常好的同学但是数据库设计却很茫然。然而在很多时候即使重视理论也很难将理论讲授深入,同时学生的课程任务繁重,自己动脑动手的时间不多,应试教育的因素又使得学生对于知识的渴望大于对实践的需求。针对这些,教师无形中不得不加强对理论的深入,于是教学进入了不良循环的一个怪圈:成绩好的学生在毕业设计阶段也可能表现出对数据库设计无从下手,甚至ER图都不会画或画错,学生成绩的优良并不能如实反映他们对于这门课知识的掌握程度。

我国信息技术发展时间较短,从业人员较少,专业教材的建设正在逐步完善,在这样的现状下,美国等发达国家在其计算机科学发展的几十年间沉淀的经典教材仍有许多值得借鉴之处。但是国内高校对于双语教学的尝试,进展比较缓慢效果并不明显,特别是采用英文原版教材对教学的实施难度较大。在这种情况下适当的引用英文原版教材中的实例甚至是国外高校教学中的实例,对《数据库原理及应用》课程极为重要。

2 实例教学的作用

(1)实例教学是一种生动、灵活、多样化的教学方法。实例教学打破传统的课堂教学概念,进行全方位,多层次的探索。学生由传统的以讲授法为代表的教学中的被动变为主动,并获得了模拟解决实际问题的各种练习机会;

(2)归纳和演绎恰当的结合,有利于学生创造能力的开发。采用实例教学,课堂气氛较为活跃,学生积极参与,各自提出解决问题的方案,再比较不同方案的利弊,最后找出一个比较可行的设计流程。当完成基本原理方法的讲解之后,都会安排一次大作业,这更加体现了实例教学的特点;

(3)以实例促教学,理论联系实际。通过实例,可以启发学生将理论与实践结合起来,从获得现成的知识到探索未知的领域飞跃。

3 实例在数据库教学中的运用

3.1 实例分析

实例分析一般采用课堂随机发言的方式展开讨论。教师将一些比较常见的或者相对比较容易理解的问题在课堂上提出,学生对此自由发言,最后教师归纳总结。将传统教学中表现出的弊端尽可能的避免,如:(1)不联系实际,如QBE、嵌入式SQL、事务、备份等;(2)无法提高学生实际动手能力,没有大容量、高复杂的数据库;(3)设计能力,没有正确的设计思路(三范式的错误用法),没有经过设计训练。这些问题经过教师启发之后,学生很容易抓住重点分析解决问题。

3.2 实例训练

数据库课程是一门比较重视实践的课程,而运用实例进行教学又是简单易行的办法。从课本之外的地方找到相关的实例是一种新颖有效的办法,因为课本上的实例一般都选择比较简单的和某一个主题相关的例子,学生独立看书的过程中很容易看懂这些实例,如果上课的过程中继续引用,反复讲解,难免会给学生造成烦躁的情绪,时间长了,学生会觉得这门课的内容相对简单,往往容易掉以轻心。这样就对教师提出了更高的要求。教师不仅要懂得和掌握实例分析的方法和技巧,而且要具有实践经验,以及驾驭课堂讨论的能力,这样才能把数据库原理的教学做好。

4 实例举例

《数据库原理及应用》课程最重要的实践环节就是让学生能够开发一个功能完善的数据库应用系统,通常数据库设计质量的好坏直接影响到数据库应用系统的运行质量,而数据组织的是否得当正是数据库设计的关键所在.因此,关系数据库设计所面临的一个问题是:给出一组数据,如何去构造关系以及每个关系中应包含哪些属性,许多设计者通过经验或者直觉进行设计,却往往在使用中遇到这样或那样的问题,关系数据库里的数据规范化理论对于此问题作了一些理论上的研究.

国内的教材中对于问题的分析往往用比较简单易懂的单独实例加以说明,就一个问题而言比较容易理解,但是不适合拓展和举一反三,实例没有连续性。这样的例子在学生头脑中易形成断断续续的知识点,而不是连续的设计思想。这很容易给学生造成设计无从下手的困境,这也是数据库教学过程中容易重视理论忽视实践的一个原因。

下面的实例选自英国northumbria大学课程中的一个实例,这个实例可以代替“关系数据理论”这一章书本中的内容直接讲解,也可以辅助这一章进行适当的补充,这就要求教师的理论知识比较扎实,有很高的课堂引导能力,讲解联系实际防止空洞,重视培养学生的设计能力。

4.1 回顾相关知识

在开始关系数据理论知识讲解之前,首先回顾概念:候选码、主键(码)、外键。回顾最好的办法是选择教师适当引导,学生主动回答的方式。让学生认识到关系理论设计的重要性,在关系数据库设计中,数据合理存储和组织的核心是设计科学的关系模式,能准确反映现实世界实体间的联系,最大限度的减少冗余这就是关系模式规范化的问题。

4.2 UNF Un-normalised Form(未规范化的形式)

表1UNF实例

4.3 1NF First Normal Form(1范式)

对于学生选课的例子,ModuleCode、ModuleTitle之外的其他属性都存在表中套表的情况,即一个给定的课程,对应于多个学生。所以我们将套的表分离为新表,具有外键关系的字段用*标识:

定义:符合1范式的关系,就是不存在表中套表的情况。表中套表:即一个给定的主键(码)的值,存在多个其他字段的值和它对应。

分析1NF:(1)插入异常。如果有新的学生来报道,具体数据有“N990036、JONE、25/11/1978”,插入数据时因为没有Module信息则无法完成;(2)删除异常。N990036如果放弃选择Module为IS705的信息,删除记录时会因为删除了Module信息,N990036信息也随之消失;(3)修改复杂、冗余大。学生若选择了K个Module,那么Student Name和Date of Birth都要毫无遗漏的出现K次。如果要修改一个Student Name,则需要修改所有出现这个Student Name的地方。带着这样的问题我们开始下面的内容。

4.4 2NF Second Normal Form(2范式)

在确定2NF的时候,我们要检查每一个非主属性,看他们是完全依赖于主键(码)(所有主属性),还是部分依赖于主键(码)。分析ModuleCode和ModuleTitle,因为主键(码)只有一个属性。第二个关系中主键(码)是由两个属性组成的,所以每一个非主属性都要进行检查。StudentName和DateofBirth属性只依赖于StudentCode,所以要分离为新的关系。Grade和Result属性依赖于ModuleCode和StudentCode两个属性,因为主键(码)的任何一个子集都不能充分决定这两个属性。2NF结果如下:

定义2NF:一个属于1NF的关系也属于2NF ,如果主键(码)只有一个属性组成,或者非主属性(non-key attributes)完全依赖于主键(码)(即依赖于所有主属性,而不是部分主属性)

4.5 3NF Third Normal Form(3范式)

在确定3NF的时候,我们要检查每一个非主属性,看他们是否不依赖于其他非主属性。ModuleCode和ModuleTitle的关系属于3NF。StudentCode、StudentName和DateofBirth的关系也属于3NF。Result属性依赖于Grade这个非主属性,因为我们知道了Grade,就能确定Result的值,这两个属性需要分离为一个新的关系。3NF的结果如下:

定义:一个属于2NF的关系也属于3NF,如果所有的非主属性都不依赖于其他非主属性,并且所有主属性也不依赖于其他主属性。(或者说消除了传递依赖)(这里的3NF实际上是书本上的BCNF!)

4.6 规范化小结

图2 各种范式及规范化过程

5 相关习题

根据给出的实例,让学生自己分析

表2 UNF习题

6 结束语

实例教学法是传统教学方法的一种补充,在本科生的教学中首次尝试,收到很好的效果。实例教学法的成功取决于(1)选择的实例合理;(2)教师的素质和教师在课堂上的表现;(3)学生在教学过程中的主动性发挥程度。总之,实例教学法有利于提高学生学习的积极主动性,很好的做到了理论联系实际,特别是采用国外的教材或者是国外高校的实例,会大大加强学生对于这门课程的兴趣。对于实例教学法的实施方法,有效的让学生学会学习,主动学习,极大的提高了分析和解决问题的能力。

参考文献:

[1]萨师煊,王珊.数据库系统概论(第三版)[M].北京:高等教育出版社.2001.

[2]王珊,陈红.数据库系统原理教程[M].北京:清华大学出版社,1998.

[3]DATE CJ.An Introduction to Database System(Ed.6)[M].Addison-Wesley.1995.

[4]李艳梅,罗建..《数据库系统概论》教学改革探讨[J].西华师范大学学报(自然科学版),2003,(01).

[5]冯玉才.数据库基础(第二版)[M].武汉:华中理工大学出版社.1993.

[6][美]Evangelos Petroutsos,Kevin Hough. 邱仲潘译.Visual Basic 6 高级开发指南[M].北京:电子工业出版社,1999.

[7]刘容.数据库课程教学改革初探[J].高等工程教育研究,1997,(4).

[8]何玉洁,武欣,邓一凡.Ryan K Stephens, Ronald R Plew.数据库设计[M].北京:机械工业出版社,2001.

[9]Silberschatz,杨冬青,唐世渭等译.数据库系统概念(原书第4版)[M].北京:机械工业出版社,2003(3).

[10]李红. 数据库原理及应用[M].北京:高等教育出版社,2003.

[11]伍俊良,刘飞.数据库原理与基础实践环节在信息专业类教学中的应用与教学要求解析[J].计算机教育,2004(6).

[12]崔巍.数据库系统及应用[M].第2版.北京:高等教育出版社,2003.

[13]Silberschatz, Abrah. Database system concepts[M].北京:高等教育出版社,2002.

第3篇:数据库系统概论范文

[关键词]内存数据库;并发控制;恢复技术

[中图分类号]G250.74 [文献标识码]A [文章编号]1672-5158(2013)06-0050-01

1 内存数据库概论

1.1 内存数据库的概念

内存数据库指的是:一种将数据存储在内存中,并可以实现直接操作的数据库。内存数据库在计算机信息系统中有着严谨的定义:设定DBS为一个数据库系统,DB为该数据库系统中的数据库,DBM(t)代表t时刻中出现在DB中的数据集合,AT(t)代表t时期时处于活动状态的事物集合,Dt(T)则是事物集在t时刻进行操作的数据集。在上述条件满足的情况下,如任意t时刻时,满足T隶属于AT(t)且Dt(T)隶属于DBM(t),则将DBS成为一个内存数据库系统,一般用MMDBS简称;同时称DB为一个内存数据库,并简称为MMDB。

1.2 内存数据库的特点

内存数据库技术具有以下几方面特性:

第一,以较为复杂的模型代表数据框架,具有良好的数据扩展性,能够使数据得到充分利用。

第二,具有方便的用户接口,数据和程序的独立性也十分高。

第三,具有并发控制、故障恢复、完整性及安全性四个方面的数据控制性能。在数据库的支配管理下,各个程序中的数据由系统进行统一管理和集中控制。

第四,大大提升了系统的灵活性和数据的读写速率。

2 内存数据库中的关键技术

2.1 并发控制技术

并发控制是内存数据库中较为典型的关键技术之一。由于内存数据库存在于系统内存中,因此在并发控制上有着其独特的设计思路,具体体现在以下几方面:

第一,基于并发控制技术的背景下,事务锁的时间通常较短,因此由于锁造成的竞争也较短。这主要是因为内存数据库的数据访问速度通常较快,数据与数据之间的交换衔接时间也较短。

第二,很多内存数据库系统都需要采用事务并发执行的方式完成数据采集和交换,为了保证这一过程实施的安全性和可靠性,通常采用粗粒度锁作为辅助,以此降低锁的开销。对于一些较为复杂的内存数据库系统,采用传统、单一的加锁方式很难满足实际需求,则在进行内存数据设计的时候通常考虑应用多粒度锁体系,例如表锁、数据库锁或记录锁。

此外,由于内存数据库技术对系统系能的要求较高,在实际设计过程中需要充分借用内存的优势并结合内存数据库的特性,尽量减少并发控制对性能的不良影响。当然,上述设计需要建立在保证事物ACID的基础上。

2.2 故障恢复技术

由于内存数据库中,内存是数据存储的主要单元,而内存本身的不稳定性较高,导致内存数据库发生系统故障的频率也比较高。因此,构建有效的故障恢复机制对于内存数据库就显得意义非凡。目前,应用于内存数据库的主流故障恢复技术包含日志、检验点和内存数据库重装三类。

第一,日志。日志中的系统运行记录将内存数据库系统运行时的信息详尽地保存了下来,在事务恢复执行之前,由日志记录下的数据镜像便被很好地装入内存之中。换句话说,日志为内存数据库的故障恢复提供了相应的技术依据。

第二,检验点。检验点操作时,内存数据库一般能够处于静止状态,此时能够对系统数据的整体或部分进行有效记录,并以此作为故障发生后的恢复数据镜像。目前,Fuzzy checkpoint是应用于内存数据库系统中最为广泛的检验点技术,该技术能够实现任意时间点的数据检验,且不受事物或动作状态的限制,具有很好的应用效应。

第三,内存数据库重装。重装技术是一种将数据库外存版SDB恢复到内存版MDB的技术过程,主要分为完整重装和部分重装两部分。当系统出现掉电故障或初装状态时,一般应用完整重装对内存数据库系统进行故障恢复;而当内存介质发生故障或内存不能存储于数据库整体时,则应用部分重装操作实现对内存数据库系统的故障恢复,换人数据的选取是应用部分重装操作的关键环节。

2.3 索引技术

传统的磁盘数据库采用B/B+树的索引技术,此技术能够有效减少方位磁盘数据的I/O次数,然而,该项技术并适合内存数据库系统。目前,主流的内存数据库一般选用T树索引技术,这是一项根据AVL树和B树发展而来的技术。

喇索引技术融合了AVL树技术和B树技术的优点,既具有AVL树的二分查找性能,又具备B树良好的更新及数据存储性能。在进行并发控制时,由于T树比B树高,因此需要更多的锁才能完成并发控制流程,所以应用喇进行索引时,加锁和解锁的代价比应用B树时要高很多。以下为喇的节点结构示意图:

由于采用了喇结构,内存数据库中只需存放指向相应记录对应字段的指针,因此使索引中变长字段的存储问题得到了很好地解决。此外,在T树索引技术背景下,指针的长度一般也比其指向字段的长度小,因此节省了大量的内存空间,使系统的运行也变得更为流畅。

结论

本文对内存数据库中的几个重要关键技术进行了简要介绍和分析,通过对比发现,内存数据库技术相比于传统的磁盘数据库技术有着其明显的优势之处。随着计算机数据库技术应用的领域逐渐深入,有关内存数据库技术新的研究成果也将不断涌现,例如在电信、军事、工业控制等领域,内存数据库技术的引入和应用已成为大势所趋。因此,我们有理由相信未来对内存数据库技术的研究也将得到进一步拓展。

参考文献

[1]曹猗宣,王晶,内存数据库在彩铃业务中的应用[J]计算机系统应用,2011,20(5)

第4篇:数据库系统概论范文

关键词:管理信息系统(MIS);数据库

一 、完善用户识别

用户身份的正确识别与检验是MIS安全的门户。为了有效可靠地管理用户权限,保证系统的安全,需要一套可靠完善的身份鉴别机制。

(1)在MIS的数据库中创建一个用户表,为每个用户分配一个唯一的用户编码和一个唯一的用户密码,并且用户的密码只能由用户自己管理。当用户要登录数据库管理系统时,必须提供正确的用户编码和密码方能进人该系统。

(2)我们还可以利用数据滤网功能,也就是过滤功能。在用户登录界面,对用户输人的用户标识和密码先进行过滤,把单引号、分号、 、% 等“危险字符”全部过滤掉,再进行数据语句的构造,可大大降低攻击者成功的概率。

(3)我们可以通过限制用户输入数据的长度,例如限制用户输入数据的字符最多不能超过8位,这样就可以大大降低系统被攻击的风险,增加了入侵者插入有害代码的难度,确保了系统的安全。

(4)设置数据库系统口令,数据库系统口令也是是身份鉴别、保证系统安全的最常见、最方便的一种方法。它是登录访问数据库系统所需的口令。应用程序要存取数据库表,必须先登录数据库,应用程序凭借用户提供的正确口令就能顺利登录数据库。所有的口令值不要嵌入程序,应隐蔽到某一数据库中,这样就避免了修改的麻烦,有了数据库口令,就可以阻止有害侵入,增加了系统的安全性。

二 、访问权限控制

访问权限控制是数据库系统在利用角色管理数据库安全性方面采取的基本措施。

通过验证用户名称和口令。防止非数据库系统用户注册到数据库,对数据库进行非法存取操作。

授予用户一定的权限,限制用户操纵数据库的权力;授予用户对数据库实体的存取执行权限。阻止用户访问非授权数据,提供数据库实体存取审计机制。使数据库管理员可以监视数据库中数据的存取情况和系统资源的使用情况,采用视图机制限制存取基表的行和列集合。对所有客户端按工作性质分类。分别授予不同的用户角色。对不同的用户角色。根据其使用的数据源。分别授予不同的数据库对象存取权限。

三、 数据加密

在MIS中,为了防止非法用户进入系统、窃取机密信息或非授权用户越权操作数据,必须对数据进行加密处理。

对MIS中的数据库加密处理有三种基本方式:

(1) 文件加密:将涉及重要信息的文件进行加密,进入MIS应用系统时解密,在退出应用系统时再进行加密。

(2)记录加密:与文件加密类似,但加密的单位是记录而不是文件。

(3)字段加密:即直接对数据库的最小单位一字段进行加密,加密算法是加密的核心, 目前可应用的国际公认的密码算法主要有:DES(数据加密标准)、RSA(公钥密码体制)、刘氏高强度公开加密算法等。

除此之外还有硬性加密,硬加密指的是用物理方法进行加密,如在存放在文件的磁盘上用激光打孔进行加密等。

通过数据库加密有效地防止了通过浏览数据库表的方式获得用户登录信息。

四 、审计与追踪

数据审计的目的在于:当数据被窃取或破坏时,能及时发现和补救,即及时发现问题的原因, 为维护数据的完整性提供保障。数据审计可 在MIS的多个层次上实现,其中在操作系统和数据库系统上实现时,系统开销较大,而在功能层、用户层等层次上采取适当的审计措施则较好。

应用系统常用的审计措施有:

(1)取轨运行法:该方法要求对数据的操作由两个用户在不同的工作站上完成,一个用户的操作必须经过另一个用户的审核通过后方能生效。

(2)轨迹法;该方法对应用系统中的一切操作都记录在案,并由专人定期检查,从而监督系统运行情况。

五 、备份与恢复

数据库可以通过用户识别、访问权限限制、数据加密等保护措施使得管理信息系统健康运行,但难保百无一疏,而且现实中还存在其他很多原因造成数据的丢失,比如误删除,硬件老化,不可抗力,系统抵御能力差等等方面,所以加强对数据的备份工作至关重要。

备份工作有几点因素需要考虑,比如:

1、备份周期。(根据数据的重要程度,可以选择不同的时间进行备份,以便清晰明了)。

2、使用静态备份还是动态备份,(动态备份也即允许数据库运行时进行备份)。

3、仅使用全备份还是共同使用全备份和增量备份。

4、使用什么介质(硬盘,光盘等)。

5、使用人工备份还是设计好的自动备份程序。

6、检验备份完整性的周期。

7、备份存储的空间是否防窃、防磁干扰、防火。

8、是否指定其他人实行备份,备份者是否享有必要的登录号和口令。

9、在负责备份和恢复的主要人员缺席的情况下,是否有其他人能代替。

其次我们还要注意务必使计算机网络数据备份自动化,以减少系统管理员的工作量。使数据备份工作制度化,科学化。做好介质管理工作,防止读写操作的错误。

对数据存储,形成分门别类的介质存储,使数据的保存更细致、科学。介质自动清洗轮转,提高介质的安全性和使用寿命。还要以备份服务器形成备份中心,对各种平台的应用系统及其他信息数据进行集中的备份。

另外系统管理员还可以在任意一台工作站上管理、监控、配置备份系统,实现分布处理、集中管理。

最后维护人员要尽量地恢复损坏的整个文件系统和各类数据。备份系统还应考虑网络带宽对备份性能的影响、备份服务器的平台选择及安全性、备份系统容量的适度冗余、备份系统良好的扩展性等。

结语:

以上只是论述了数据库在管理信息系统中安全的几个重要方面和体现,还有其他一些方面没有专门提到。这些管理不到位。虽然不会导致系统瘫痪。但也会造成系统部分功能的暂时性终止。例如如果回退段数量不够或剩余空间不够。都可以造成有些大的数据提交不成功。因此,对于数据库系统的安全问题马虎不得。

参考文献:

[1]李宁,陈彬.MIS系统权限管理中的安全性问题探讨[J].教育周刊,2008(11).

[2]萨师煊,王珊.《数据库系统概论》(第三版)[M].教育出版社,2000.

第5篇:数据库系统概论范文

关键词:数据库;基础研究;理论基础

中图分类号:Tp311.13 文献标识码:A文章编号:1005-5312(2010)14-0134-01

一、数据库概论

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。

数据库发展阶段大致划分为如下几个阶段:人工管理阶段;文件系统阶段;数据库系统阶段;高级数据库阶段。

二、数据库的主要特点

(1)实现数据共享。数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。

(2)减少数据的冗余度同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。

(3)数据的独立性数据的独立性包括数据库中数据库的逻辑结构和应用程序相互独立,也包括数据物理结构的变化不影响数据的逻辑结构。

(4)数据实现集中控制。文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其文件之间毫无关系。

三、数据库理论基础

一个成功的信息管理系统,是建立在许多条件之上的,而数据库是其中一个非常重要的条件和关键技术。

信息管理系统所涉及的数据库设计分五个步骤:数据库需求分析、概念设计、逻辑设计、物理设计与加载测试。

(1)数据库需求分析的任务是将业务管理单证流化为数据流,划分主题之间的边界,绘制出DFD图,并完成相应的数据字典。

(2)概念设计的任务是从DFD出发,绘制出本主题的实体-关系图,并列出各个实体与关系的纲要表。

(3)逻辑设计的任务是从E-R图与对应的纲要表出发,确定各个实体及关系的表名属性。

(4)加载测试工作贯穿于程序测试工作的全过程,整个录入、修改、查询、处理工作均可视为对数据库的加载测试工作。

四、数据库系统设计

数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。

数据库设计的步骤是:

(1)数据库结构定义:目前的数据库管理系统(DBMS)有的是支持联机事务处理CLTP(负责对事务数据进行采集、处理、存储)的操作型DBMS,有的可支持数据仓库、有联机分析处理CLAP(指为支持决策的制定对数据的一种加工操作)功能的大型DBMS,有的数据库是关系型的、有的可支持面向对象数据库。针对选择的DBMS,进行数据库结构定义。

(2)数据表定义:数据表定义指定义数据库中数据表的结构,数据表的逻辑结构包括:属性名称、类型、表示形式、缺省值、校验规则、是否关键字、可否为空等。关系型数据库要尽量按关系规范化要求进行数据库设计,但为使效率高,规范化程度应根据应用环境和条件来决定。

(3)存储设备和存储空间组织:确定数据的存放地点、存储路径、存储设备等,备份方案,对多版本如何保证一致性和数据的完整性。

(4)数据使用权限设置:针对用户的不同使用要求,确定数据的用户使用权限,确保数据安全。

(5)数据字典设计:用数据字典描述数据库的设计,便于维护和修改。

建立关系数据结构涉及两方面内容:确定关联的关键指标项并建立关联表;确定单一的父系记录结构。

第一,链接关系的确定。在进行了上述数据规范化重组后,已经可以确保每一个基本数据表(我们简称为表)是规范的,但是这些单独的表并不能完整地反映事物,通常需要通过指标体系的整体指标数据才能完整全面地反映问题。

第6篇:数据库系统概论范文

关键词:数据库原理与应用;教学改革;教学实践

中图分类号:G424 文献标识码:A 文章编号:1009-3044(2014)19-4373-02

《数据库原理与应用》是高校计算机及相关专业的核心专业基础课程之一,是一门理论与实践结合性较强的综合性课程。该课程涉及内容可分为两个部分:1) 基础理论部分,包括:数据库系统基础知识(数据库发展、构成、专业术语等)与数据库设计理论。2) 具体应用部分,包括:数据库与表的创建;数据查询、增、删、改;视图;索引;存储过程;触发器及数据库安全与维护等。

《数据库原理与应用》课程教学目标为:培养学生数据库及其对象的应用和管理能力;培养学生使用Transact-SQL语言进行程序设计的能力;培养学生进行数据库日常管理和维护的能力。针对不同的教学内容,如教学过程采用相同教学方法,极易产生数据库理论与具体应用脱节的现象,易使学生产生数据库理论过多的反感情绪,无法达到教学预期目标。

1 传统数据库教学局限性

传统数据库课程的教学的局限主要分为两个方面:1) 过度重视理论,忽略实践教学;2) 强调数据库软件的应用,忽视数据库基本理论体系的讲授。

具体说明如下:

1) 重理论,轻实践,无法激发学生学习兴趣

传统数据库原理与应用课程在课程大纲设置方面,理论课程占学时数远高于实验学时数,且不设置单独的课程设计,学生上机具体操作练习学时严重不足。实验课程往往只针对某个具体知识点,实验内容不具有连贯性,学生不清楚如何利用数据库进行具体编程实践,学习过程无成就感,最终导致学习缺乏成就感,兴趣缺失,学习效果较差。

2) 过度强调数据库软件的作用

为了解决传统数据库教学过程“重理论,轻实践”的缺陷,一些数据库教育研究者提出了依托某一款数据库软件平台进行,以案例为驱动进行课程讲授的教学方法。但是在教学过程中矫枉过正,过度强调应用(过度强调数据库平台的应用方法)而忽视数据库整体理论系统的讲解,不能使学生完整、系统的掌握数据库的基本相关理论。学生掌握的数据库知识仅限于平台应用,理论基础不足,为学生后续的提高与发展埋下隐患。

3) 教学与实践脱节

高等院校在传统的教学过程中强调数据库理论知识的完备性,缺乏学习的应用性和针对性,理论性强,概念抽象,理论和实践教学存在不同程度上的脱节。传统数据库原理与应用课程教学内容主要集中在数据库系统基本理论与数据库设计阶段,在具体应用方面仅涉及各数据库对象的基本操作,如:创建、修改、删除等,对数据库技术在具体软件项目开发过程中的应用知识缺乏系统、详细的讲解,造成数据库理论教学与实践脱节严重,导致学生在完成数据库课程学习后无法掌握数据库技术的具体应用方式,不能做到学以致用。

4) 教学实践不符合软件工程的原则

传统数据库原理与应用课程教学过程,从课后作业到上机实践再到课程设计,几乎全部为单个学生独立完成,未严格按照软件工程原则进行完成。现代各种数据库应用系统开发基本都是工程化的合作开发,其基本特征是按照软件工程学的原则进行组织。在课程后续的各种实践环节(如:毕业设计)中很多学生不懂得如何利用团队合作去完成一个数据库系统的具体设计与开发,严重影响了实践环节的完成质量,最终影响学生的数据库技术应用水平。

2 改进的教学方法探索实践

目前本校《数据库原理与应用》课程使用的教学实验平台为SQL SERVER2005。课程共64学时,其中实验16学时,SQL SERVER2005数据库具体应用中,完整的数据库系统包括系统界面(利用其它高级语言开发)和后台数据库。由于SQLServer平台与其它开发平台的相对独立性,在现行教学方式下,学生在学习过程中往往不清楚如何利用SQLServer2005平台进行项目开发。

主要原因有两个:

1) SQL SERVER2005数据库课程的教学过程只涉及后台数据库本身的操作,知识较为孤立。学生在学习过程中无法建立完整数据库系统的概念,特别是对界面开发过程概念较为模糊。

2) 学生在学习数据库课程前未接触过其它高级语言(C语言除外),尝试将数据库结合某种高级语言(C#、C++、Java等)进行讲解困难较大(主要是内容太多,难以在规定的课时内获得较好效果)。

针对上述数据库课程教学过程中出现的问题,结合本校数据库的教学实际,通过分析课程内容及培养目标,最终提出了改进的数据库课程教学方法。方法具有两套具体实施方案。

两套具体实施方案,分别描述如下:

1) 制定适合数据库教学的教学大纲

(1) 通过制定新教学大纲,在数据库课程开课前,开设一门高级语言课程做为基础,以解决学生学习数据库系统组成过程中不清楚应用程序及其接口含义的问题。(可选C#或Java);

(2) 在讲解完毕数据库基础理论(基本概念、数据库设计理论等)后,以具体实例(简单的数据库管理系统等)为基础,讲解后续内容,具体包括:数据库与表的创建;数据查询、增、删、改;视图;索引;存储过程与触发器及数据库安全与维护,将理论教学作为实践教学的基础,实践教学作为理论教学的深化,促进学生对数据库技术的深度掌握;

(3) 针对不同的授课内容采用不同的课程时间安排,实践性较强章节(如:视图、存储过程、触发器等)宜采取“讲一学时练一学时”的方式进行授课,其它章节采取“讲一次内容,上一次机”的方式进行授课,灵活制定上机实验计划,最大程度上做到讲练结合,重视理论而不忽视实践。

2) 制定新教学大纲在高校教学中不易实现,在保持相关课程开课顺序不变,数据库课程理论课时、实践课时不变的情况下,课程改革设想如下:

(1) 课堂教学:利用少量课堂时间(一小节课50分钟或一大节课100分钟),结合实例介绍数据库系统的一般结构、开发流程、开发平台(不涉及具体语言的编程)。要求学生自由分组(每组4~6人),自选项目(教师掌控选题难度,并提供建议项目若干)利用课余时间进行分组实施,使学生初步建立软件工程的思想及开发团队的概念。

(2) 实践方式:适当利用学生课余时间。学生独立利用课余时间完成具体语言、开发平台的学习,以小组为单位分模块完成具体项目实现,各模块任务需在教师指导下具体到人,并制定详细任务书,促进学生的实践积极性,防止学习惰性的产生。

(3) 教师与学生的交流互动:作为教学过程的重要环节,师生的交流互动在学生学习实践过程中的地位相当重要。具体措施描述如下:

①保证课程必要的现场答疑时间,每周两小时,集中解答学生在理论学习与实践过程中遇到的问题;

②充分利用现代学生熟悉的现代通讯工具(如:QQ、微信、微博、YY等),提升学生的讨论积极性,建立专门YY频道,供学生以在线多人语音的形式讨论项目进展、疑难问题,随时了解学生实践进度,解答疑难,防止学生产生畏难情绪,促进实践活动进行。

(4) 项目提交、评讲及分数评判:课程结束前一周,以小组为单位打包提交系统(包括:数据库系统、应用系统界面)。由三至四位教师按照系统结构是否合理、功能是否完整、代码是否规整给出评判成绩。分别评出UI结构设计最佳系统与功能实现最佳系统,鼓励学生讲解开发心得,供大家学习参考。

3 结束语

在明确《数据库原理与应用》课程主要内容与教学目标的基础上,该文首先分析了传统《数据库原理与应用》教学过程的缺陷,结合本校数据库课程的实际提出了两套数据库教学改革的具体实施方案,并选择方案二进行实施。一学期以来,学生在较好掌握数据库系统理论知识的前提下,较好的完成了相关实践任务。该教学方案成功激发了学生学习数据库课程的兴趣,提升了学习积极性,使学生在加深理论知识理解与掌握的同时提高了动手实践能力,方案实施效果明显。

参考文献:

[1] 王峰.实用数据库技术[M]. 北京:中国水利水电出版社,2012.

[2] 萨师煊,王珊.数据库系统概论[M]. 2版.北京:高等教育出版社,2000.

[3] 钟辉.数据库课程教学改革探索与实践[J]. 沈阳建筑大学学报:社会科学版,2010(3).

第7篇:数据库系统概论范文

关键词:关系数据库;查询优化;方法

中图分类号:TP311文献标识码:A 文章编号:1009-3044(2008)16-21188-02

On Optimization Method for Query in Relational Database

YIN Mei-gui

(Heyuan Polytechnic, Heyuan 517000, China)

Abstract: In the database application MIS, query process is the most frequent. Whether query process is good or bad will directly affect the performance of database application system. Therefore, query in database should be optimized. This article suggests some methods of how to realize the optimization by making use of the technology of query in relational database.

Key words: RDBMS; query optimization; methods

1 引言

数据库系统是管理信息系统的核心,基于数据库的联机事务处理(OLTP)以及联机分析处理(OLAP)是企业、银行、政府部分最为重要的计算机应用之一。从大多数数据库系统的应用实例来看,查询操作是所有数据库操作中所占据比重最大的操作。当数据库系统积累到一定程度(如税务系统的账户达到上百万甚至上千万条记录),全表扫描一次往往需要数十分钟,甚至数小时。如果采用比全表扫描更好的查询策略,往往能降低查询时间。如何设计数据库,采取什么样的查询方法,提高查询效率,这就是查询优化要解决的问题。

2 合理使用索引

索引是数据库一个常用的数据库对象,优化查询的重要方法是建立索引,也是数据库同时预先将数据分类导入到多表格的方式。在关系数据库的表上建立合适的索引,可以提高数据库数据查询的速度,改善数据库的性能。除了集簇索引,每一索引的使用都以磁盘容量作为代价,当使用一个索引,数据库引擎必须执行两个数据读取,这两个数据读取是数据库记录所必需的,第一个数据被读取到实际数据指针的索引,第二个数据被读入到指针指定的位置。因此创建索引时必须要与实际应用系统的查询需求密切结合,才能达到优化查询的目的。

2.1 建索引的必要性

判断索引必要性的最终标准是判断这些索引是否对数据库的工作效率有所帮助。在实际的应用过程中,应该为优化工作做以下几点准备:

首先观察数据库应用程序中所有的SQL语句,并从中统计出常用且可能对性能有影响的部分语句,然后分析、归纳出作为Where条件子句的字段及其各种组合方式;在这一基础上可以初步判断出哪些表的哪些字段应该建立索引。其次,必须了解应用程序,要了解哪些表是数据操作频繁的表;哪些表经常与其他表进行连接;哪些表中的数据量可能很大;数据量大的表中各个字段的数据分布情况如何等等。对于满足上述条件的这些表,必须重点关注。因为建立在这些表上的索引,将对SQL语句的性能产生举足轻重的影响。

2.2 使用索引的规则

索引的使用要恰到好处,其使用原则如下:

(1)在经常进行连接,但是没有指定为外键的列上建立索引,而不经常连接的字段则由优化器自动生成索引。

(2)在主键索引方面,不应有超过25%列成为主键,而普通列很少,这会浪费索引空间。

(3)在条件表达式中经常用到的不同值较多的列上建立检索,在不同值少的列上不要建立索引。

(4)在频繁进行排序或分组(即进行group by 或 order by 操作)的属性上建立索引。

(5)在作为最小值等聚集函数的属性上考虑建立索引。

索引的建立、维护和使用都需要付出代价,应合理使用索引。错误的索引不会使数据库性能得到预期的提高,往往还会产生一些负面影响。

3 SQL语句优化

要对查询进行优化,一个简单直接有效的方法是对SQL语句进行调整,减少计算量,提高查询的效率。以下是一些书写SQL的一些经验。

3.1 避免相关子查询

查询嵌套层数每增加一层,查询的效率成几何级的降低。要想提高嵌套语句的执行效率,则应减少嵌套语句的嵌套的层次。所以在实际应用中,若可以用连接查询代替的子查询,则用连接查询实现。

例:查询选修了“3-105”号课程的学生基本信息

用子查询的方法如下所示:

SELECT * FROM student WHERE SNO IN (SELECT sno FROM sc WHERE cno=’3-105’)

改写成连接查询如下:

SELECT student.* FROM student,sc WHERE stuent.sno=sc.sno AND cno=’3-105’

3.2 用UNION替换OR

合理建立索引有助于提高查询效率。有时尽管在所有的检索列上都有索引,但有些形式SELECT查询语句可能不会促使查询优化器使用索引,从而降低查询效率。如果对查询语句进行改写,用UNION替换OR,可以强迫优化器按索引路径处理。如:假定分别在“职工”关系中的“年龄”和“月工资”字段上创建了索引,对以下SQL语句

SELECT 姓名,年龄,月工资 FROM 职工 WHERE 年龄>45 OR 月工资

可替换为:

SELECT 姓名,年龄,月工资 FROM 职工 WHERE 年龄>45

UNION

SELECT 姓名,年龄,月工资 FROM 职工 WHERE月工资

3.3 使用临时表优化查询

在涉及相关查询的某些情形中,构造临时关系可以提高查询效率。如:查询每个部门中月工资最高的“职工号”

SELECT 职工号 FROM 职工 AS e1 WHERE 月工资=(SELECT MAX(月工资)FROM 职工 AS e2 WHERE e1.部门号=e2.部门号)

以上的查询对于外层的职工关系e1中的每一个元组,都要对内层的整个职工关系e2进行检索,因此查询效率不高。可以构建临时关系提高查询效率。

SELECT MAX(月工资) AS 最高工资,部门号 INTO temp FROM职工 GROUP BY 部门号

SELECT 职工号 FROM 职工,temp WHERE 月工资=最高工资 AND 职工.部门号=temp.部门号

3.4 避免在索引列上使用计算

WHERE子句中,如果索引列是函数的一部分。优化器不使用索引而使用全表扫描。如

SELECT * FROM职工 WHERE 月工资*12>20000

可改为:

SELECT * FROM 职工 WHERE 月工资>20000/12

3.5 谓词的等价变换

由于执行引擎对各种谓词的处理方法不同,把逻辑表达式重写成等价的且效率较高的表达式是提高效率的有效方法,同时也是切实可行的。针对执行引擎对各种谓词执行效率的不同,总结如下谓词转换规则:

1)将BETWEEN转化为AND 连接的谓词

把BETWEEN...AND...形式改写为用AND连接的两个谓词,效率往往

有一定的提高。

例如:月工资 BETWEEN 1000 AND 2000 改为: 月工资>=1000 AND 月工资

2)避免使用In语句

当查询语句中有In关键词时,优化器采用OR并列条件。

如:职工号IN (‘1001’,’2001’) 改为:职工号=’1001’ OR 职工号=’2001’

4 结束语

查询处理是数据管理系统的核心,而查询优化技术是查询处理的关键技术。查询优化就要抓住关键问题。在数据库的开发和维护过程中,查询优化设计可以提高系统的性能,尤其对于数据量大的数据库系统最为重要。本文提到一些优化方法是根据自己的经验,并查阅了大量的资料。在具体的使用时候要根据实际情况,才能合理制定出良好的优化方法,实现快速、高效的数据查询。

参考文献:

[1] 萨师煊,王珊.数据库系统概论[M].高等教育出版社, 2002.5.

第8篇:数据库系统概论范文

关键词:SQL server数据库;安全机制

中图分类号:TP309 文献标识码:A 文章编号:1007-9599 (2011) 18-0000-01

SQL Server Database Security Meaning and Security Mechanisms Issues Study

Sun Quan

(Inner Mongolia University of Science&Technology,Baotou 014010,China)

Abstract:SQL Serve database has now been widely used in various fields,this paper SQL server database,for example,for database applications,discusses the use of several database security issues,such as:auditing,access control,authentication,database encryption,mechanism for views and stored procedures,backup,recovery and concurrency control mechanism.Made some specific recommendations.To improve user awareness of security on the database.

Keywords:SQL server database;Security

数据库通常都保存着企业,组织和政府部门的各种重要的信息,是电子商务,ERP系统和其他重要商业系统的基础。但由于大多数人对数据库安全的重视远远不及操作系统和网络安全,尽答有计算机系统中一级一级层层设置的安全措施的保护,数抓完整性和合法性存取依然会受到很多方而的安全威胁,如密码策略、系统后门、数据库操作、网络攻击以及木身的安全方案。而这些安全隐患,往往是因为我们忽略了使用数据库的安全措施引起的。这里我们主要讨论几种关于SQL server数据库的安全防范。

一、数据库安全的内涵

数据库安全是指保护数据库以防止非法用户的越权使用、窃取、更改或破坏数据。与其它计算机系统(如操作系统)的安全要求类似。数据库系统的安全要求可以归纳为保密性、完整性和可用性三个方面。

(一)保密性。保密性指保护数据库中的数据不被泄露和未授权的获取,一般要求对用户进行访问授权,同一组数据的不同用户可以被授予不同的存取权限.同时还要求能够对用户的访问操作行为进行跟踪和审计。

(二)完整性。数据库的完整性主要包括物理完整性和逻辑完整性。物理完整性是指保证数据库的数据不受物理故障(如硬件故障、突然断电等)的影响,并有可能在灾难性毁坏时重建和恢复数据库,逻辑完整性是指对数据库逻辑结构的保护,包括数据的语义完整性和操作完整性。前者是数据存取在逻辑上满足完整性约束,后者主要是指在并发事务中保证数据的一致性。

(三)可用性。数据库的可用性是指数据库不应拒绝授权用户对数据的正常操作,同时保证系统的运行效率并提供用户良好的人机交互。

二、SQLSERVER的数据库安全机制

(一)审计功能。数据库审计是监视和记录用户对数据库所施加的各种操作的机制。通过审计机制,可以自动记录用户操作,利用审计跟踪的信息,便于追查有关责任,也有助于发现系统安全方面的弱点和漏洞。对于MSSQLSERV―ER,它能提供较为完善的审计功能,用来监视各用户对数据库施加的动作。SOLSERVER审计方式具体分用户审计和系统审计2种,审计工作一般通过SQL事件探查器完成。启用用户审计功能时。审计系统可记下所有对该数据库表或视图进行访问的企图(包括成功的和不成功的)及每次操作的用户名、时间、操作代码等信息;系统审计由系统管理员进行,其审计内容主要是系统一级命令以及数据库客体的使用情况。

(二)访问控制。为了保证用户只能存取有权存取的数据,数据库系统要求对每个用户定义存取权限.在SQL Server中,用户是属于特定的数据库的,数据库用户与登录标识相关联,一个应用程序使用登录标识SQL Server登录成功后,能否对某个数据库进行操作,由该数据库中是否有相应的数据库用户来决定。SQL server可根据访问用户所属的用户类型,利用GRANT等语句来对数据库或数据库对象作权限的控制,能够较为完善地支持自主访问控制策略。SQL SERVER将用户分为四个类型:系统管理员用户、数据库所有者用户、数据库对象拥有者用户和普通用户,不同的用户具有不同的权限。

(三)身份验证。对用户的身份认证是数据库管理系统提供的最外层安全保护措施,其方法是用户进入系统时通过输入ID和密码,向系统出示自己的身份证明,系统通过严格的认证机制对用户身份进行审查核实,经过确认后才提供与之相对应的系统服务。SQL server支持windows NT认证模式和混合认证模式两种身份认证模式。

(四)数据库加密。数据库加密通过将数据用密文形式存储或传输的手段保证高敏感数据的安全,这样可以防止那些企图通过不正常途径存取数据的行为.SQL server也提供了加密的功能,以强化对分布式数据库的安全管理。SQL server使用名为pwdencrypt的哈希函数来加密隐藏用户存储在Master数据库中系统表内的密码,将已定义的视图、存储过程、触发器等都存储在系统表syscomments中,SQL Server提供了内部加密机制。

(五)视图和存储过程机制。视图是从一个或几个基本表(视图)中导出的虚表。在数据库系统中,可以利用视图通过授予用户操作特定视图的权限。限制用户访问表的特定行和特定列来保证数据的安全,防止用户对基本表的操作,实现行级或列级的安全性。在SQLserveF中.系统较好地支持了视图定义和访问机制。如何利用CREATEVIEW语句建立视图,利用SELECT子句进行视图访同等,通过建立视图以及将视图表中的不同记录分成不同的保密级别。甚至将同一字段中的不同值分成不同的保密级别,控制用户可以看到的数据,实现安全性。在SQL Server中存储过程是存储于数据库内部经过编译可执行的SQL语句,它可被其他应用程序调用执行。彻底隐藏了用户可用的数据和数据操作中涉及的某些保密处理。

三、结论

本文就SQL server数据库管理系统的安全机制进行了全面的探索和研究,数据库的安全是一个非常复杂的课题,它的实现不仅是纯粹的技术问题。而且还需要法律、管理、社会因素的配合,相信随着信息安全技术的持续改进、信息安全管理水平的不断提高和有关人员的防范意识的不断增强,数据库的安全将越来越有保障。

参考文献:

第9篇:数据库系统概论范文

关键词:数据库原理;教学方法;教学改革

中图分类号:G642文献标识码:A文章编号:1009-3044(2007)06-11766-01

1 引言

数据库原理是计算机专业的专业必修课程,该课程教学目标是系统地介绍数据库的原理知识,并结合具体的数据库管理系统软件来介绍原理的应用过程[1]。通过这门课程的学习,使学生在数据库软件开发的过程中能够选择正确的开发平台,正确地、合理地进行数据库设计,从而提高软件开发的整体质量。数据库原理是数据管理的最新技术和最有效的手段,是计算机学科的重要分支,它的出现极大的促进了计算机应用向各行各业渗透[2]。大力加强数据库原理课程的教学改革,提高数据库系统原理课程的教学质量,有利于教学改革和教育创新,有利于提高计算机专业人才培养质量的提高。

2 数据库原理课程教学中存在的问题

现在国内基本上所有的高校的计算机专业或者信息管理专业都开设了数据库原理这门课程,教学的内容和教学方法也大体相同,并且大都呈现出同样状况,学生的学习状态不佳,学习目的不明确,导致学习效果不理想,在实际应用的过程中无从下手。在数据库系统原理的教学过程中,笔者根据多年的教学实践和对学生在课程设计、毕业设计中对该门课程的应用情况的观察,认为在数据库系统原理的教学过程中存在如下几个方面的问题。

2.1 教学内容存在问题

传统教材主要以关系数据库为基础、数据库管理系统为中心,介绍的基本原理,主要包括传统数据库介绍,关系模型的基本概念, 关系代数, 关系数据库标准查询语言SQL, 关系系统的查询优化,关系模式规范化,数据库安全性和完整性以及数据库应用系统设计等内容。其中的原理部分占据了大部分,教材中很少涉及到具体的应用,学生在学习过程中很难深入理解数据库中的一些重要技术,更谈不上如何从实践上去把握。此外,传统教材由于编写时间相对较早,其中的许多理论和技术在实际中已经没有或很少得到应用。近几年出版的许多教材克服了以上一些缺点, 但又出现了一些新的问题,如原理与应用章节没有很好地衔接,教材中涉及的实例前后连贯性不强,新的技术发展很快,教材中虽有介绍,但比较抽象不具体,以致学生了解的层面非常浅,不能达到应用的要求。

2.2 实践教学环节重视不够

数据库原理虽然是一门理论性较强的课程,但如果不加强实践教学的训练,则不能对基本理论的理解和巩固,无法培养综合计算和分析、判断能力以及使用数据库原理和方法解决实际问题能力。然而目前实验课教学存在很多弊端,例如学生不明确实验目的,实验的内容不清楚,试验课时少,考核中实验课占的比例很小。课程设计也是绣花枕头,没有什么实用价值,因为课程设计的时间少,大多数学生为了完成任务,只有仿照网上或参考书上的案例用开发工具去实现,根本没有系统分析的过程,如:需求分析、概念结构设计和逻辑结构设计。现代企业的数据库应用基本上是工程化的合作开发,而数据库原理的教学基本上实践有悖工程化的原则。回顾目前的教学过程我们可以看到,除了毕业设计之外,从课后作业,上机实验到课程设计几乎都是学生的个人独立行为,没有团队合作,这样就在学生的毕业设计中导致了许多学生不懂得如何进行相互合作,严重影响了毕业设计质量,使学生毕业后不能迅速适应所在单位的工作要求。

2.3 课程考核方式存在弊端

课程设计考核方式一般是只提交实习报告和所做的软件系统,这种方式难以避免学生在网上下载或者相互抄袭现象。且传统的考试制度使大部分学生只能考,不会用。

3 数据库原理课程的教学改革方法

针对目前高等院校计算机专业数据库系统原理的教学体系存在的不足,通过教学内容的整合与优化,并以课堂教学环节、实践教学环节、考核方式的改革相配合,建立一个合理的数据库系统原理教学体系。培养学生的学习兴趣,提高学生在数据库系统原理课程应用中分析问题解决问题的能力,促进教学质量的提高。

3.1 分析教学内容,更新教学方法

数据库原理课程的重点内容是关系模型的基本概念, 关系代数, 关系数据库标准查询语言SQL, 关系系统的查询优化, 关系数据理论, 数据库设计。 难点是关系数据理论, 数据库的并发控制。在教学过程中, 针对数据库技术发展迅速、内容丰富和实用性强的特点, 总结出针对这门课程的三点教学法、案例教学法两种教学方法。

三点教学法的要点是“一个教学中心为一点、两个实践环节点为一点、三种授课方式点为一点”。 一个教学中心是整个教学过程要围绕“提高学生的理论水平、实践技能和创新能力”这个中心展开。 两个实践环节是加强数据库系统建模和设计这两个实践环节。 三种授课方式是理论讲授、上机操作和分组讨论。通过这样的教学方法提高学生的学习兴趣, 培养学生团队合作精神,加强学生对数据库技术的掌握。

案例教学起源于哈佛大学商学院, 它是一种与传统教学的“概念――理论――应用”模式完全相反, 采用“ 案例――理论和概念”模式的教学方法[3,4]。通俗地讲, 案例教学是通过对具体实例的演示、讲解, 让学生对案例进行分析、讨论、交流,充分表达自己的见解, 以达到高层次认知学习目标的一种启发式教学方法。案例教学的过程主要步骤如下:(1) 教学案例的选择与设计;(2) 案例分析与讲解;(3)课堂讨论; (4) 综合讨论结果,得出结论。

案例教学比较适合于数据库原理教学, 特别是在数据库设计部分。通过对以数据库为核心的信息系统典型案例进行剖析, 介绍数据库系统的新理论和新技术, 利用正反案例进行技术比较, 加深学生对基本原理、基本方法的理解和掌握。

3.2 重视实践教学,提高动手能力

在实践教学中,培养学生自主学习和创新精神,提高了学生分析问题,解决问题的能力,提高了学生工程设计的能力,使学生系统掌握一种工程设计的方法,为后续课程的学习打下了良好基础。在实践教学中,采用布置一个大实验,分步完成的做法,使学生对前部分的知识通过实验综合掌握,对下一步可以通过预习等方式了解知识,课堂上老师再把工程设计的方法教给学生,重点要分析如何进行需求分析、概念结构设计和逻辑结构设计。在本门实验课程完成时,不仅使学生掌握了一门知识,也使学生完成了一个综合设计,更使学生系统掌握了一种工程设计的方法。这种教学方式,使学生对知识的掌握实现了二次飞跃,在进行单元实验时,学生通过设计软件把所学的理论知识描述一下,这是第一次飞跃,在进行下一步乃至完成大实验的时候,学生要把前续实验的有关知识进行综合,实现第二次飞跃。

3.3 改革教学手段,培养学习兴趣

运用现代教育手段进行教学,弥补了传统授课方式的不足,充分利用多媒体声音、文字和动画的优势,模拟数据库设计的过程以及设计后的效果,这样一改黑板加粉笔单一的教学形式,充分发挥学生学习的主动性、自觉性,学习兴趣增加,教学效果很好,在相同的时间里增加传授的知识量,信息量,提高了授课效率,提高了教学质量。在运用这些教学手段时,学生不仅主动参与教学活动,而且使学生对相关的教育技术产生了浓厚的兴趣,促进了学生学习计算机相关知识的主动、自觉性,推动了学生素质的全面提高。

3.4 完善考试制度,重视能力培养

数据库原理是一门理论和实践相结合的专业课程,传统的单独理论试卷考试会导致学生为应付考试而对相关理论知识在考前临时突击,死记硬背,出现“ 高分低能”现象,这与该课程培养应用型人才的目标是相悖的。为此可以采用笔试、与平时项目训练相结合,平时项目设计占一定比例的考试方法。平时的项目设计在最后的考试中占一定的比例可以督促学生增强自己的动手能力和对所学知识进行应用的能力,通过测试考查学生对基本知识的掌握,在项目设计中测试学生分析问题解决问题能力的情况,从根本上解决了学生重理论,轻实践的问题,学生的数据库技术的应用能力会有很大提高。

4 结束语

针对计算机专业的数据库原理课程教学中存在的问题进行探讨,提出了教学改革的思想,期望能够在较短的时间内将主要的知识传授个学生,促进学生的主动学习,培养学生的综合能力,提高课程教学的质量。

参考文献:

[1]萨师煊,王珊.数据库系统概论[M].第3版.北京:高等教育出版社, 2000.

[2]孙艳春.高教数据库原理及应用[J].辽宁商务职业学院学报, 2003,5.

[3]黄祥淡.计算机应用课的“任务驱动”教学模式[J].中国职业技术教育,2005,1:36-37.