国家电网2.数据库考点汇总(共12页).pdf

上传人:zf 文档编号:30838913 上传时间:2024-01-30 格式:PDF 页数:12 大小:523.17KB
下载 相关 举报
国家电网2.数据库考点汇总(共12页).pdf_第1页
第1页 / 共12页
国家电网2.数据库考点汇总(共12页).pdf_第2页
第2页 / 共12页
国家电网2.数据库考点汇总(共12页).pdf_第3页
第3页 / 共12页
国家电网2.数据库考点汇总(共12页).pdf_第4页
第4页 / 共12页
国家电网2.数据库考点汇总(共12页).pdf_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

国家电网2.数据库考点汇总(共12页).pdf

《国家电网2.数据库考点汇总(共12页).pdf》由会员分享,可在线阅读,更多相关《国家电网2.数据库考点汇总(共12页).pdf(12页珍藏版)》请在冰豆网上搜索。

国家电网2.数据库考点汇总(共12页).pdf

1数据库考点汇总考点一绪论数据库考点汇总考点一绪论一、基本概念

(1)数据:

描述事物的符号记录称为数据。

数据的种类有数字、文字、图形、图像、声音等。

数据与其语义是不可分的。

(2)数据库:

数据库是长期储存在计算机内的、有组织的、可共享的数据集合。

(3)数据库管理系统:

DBMS是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取数据和维护数据。

DBMS的主要功能:

数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。

(4)数据库系统:

数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。

(5)数据库系统的特点:

数据结构化;数据共享性高,冗余度低,易扩充;数据独立性高二、数据管理技术的发展过程1数据库管理技术发展的三个阶段:

人工管理阶段、文件管理阶段和数据库系统阶段.2.文件系统与数据库系统区别和联系:

a.数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。

b.数据库系统存储数据的方式灵活,可以存储数据库中的某一个数据项,一组数据项,一组记录或一个纪录,而文件系统中数据的存取单位是记录。

c.数据库系统的数据共享性高,易扩充;而文件系统中的文件是为某一特定的应用服务的,系统也不宜扩充。

三、数据模型1.定义:

数据模型也是一种模型,它是对现实世界的一种抽象。

也就是说,数据模型是用来描述数据、组织数据和对数据进行操作的。

2.组成三要素:

数据结构、数据操作和完整性约束组成三要素:

数据结构、数据操作和完整性约束。

(1)数据结构:

是所研究的对象类型的集合,是对系统静态特性的描述。

(2)数据操作:

是指对数据库中各种对象(型)的实例(值)允许进行的操作集合,包括操作及有关的操作规则,是对系统动态特性的描述。

(3)数据的约束条件:

是一组完整性规则的集合。

完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。

3.概念模式中常见术语:

(1)实体(Entity):

指客观存在并可相互区别的事物。

比如学生、学生的一次选课、学生与系的关系等。

(2)实体型(Entitytype):

指用实体名及其属性集合来抽象和刻画同类实体。

如部门(部门号、部门名称)就是一个实体型。

(3)实体集(Entityset):

指同类实体的集合。

如全体部门就是一个实体集。

(4)属性(Attribute):

指实体所具有的某一特性。

若干属性可以刻画一个实体,例如部门实体可以由部门号、部门名称等属性组成。

(5)码(Key):

指唯一标识实体的属性集。

比如部门号是部门实体的码。

(6)域(Domain):

指某一属性的取值范围。

如部门名称的域为字符串集合。

(7)实体联系图(E-R):

是一种用来在数据库设计过程中彼时数据库系统结构的方法,是一种可视化图形方法。

(8)联系(Relationship):

反映为实体(型)内部的联系和实体(型)之间的联系。

两个实体型之间的联系分为三类:

(1)一对一(1:

1);

(2)一对多(1:

n);(3)多对多(m:

n)4概念模型的表示方法(实体-联系方法)2数据库的总体概念结构可以用E-R模型中的E-R图来表示。

E-R图由以下基本元素构成:

(1)矩形:

代表实体集;

(2)椭圆:

代表属性;(3)菱形:

代表实体间的联系集;(4)线段:

将属性与实体集相连或将实体集与联系集相连。

除线段以外,每个元素上都标有它所代表的实体、属性或联系。

5常用的数据库模型:

层次、网状、关系模型数据库模型:

层次、网状、关系模型层次模型与网状模型的优缺点:

层次数据模型的优点是:

1.层次数据结构比较简单清晰。

2.层次数据库的查询效率高。

3.层次数据模型提供了良好的完整性支持。

缺点主要有:

1.现实世界中很多联系是非层次性的,如结点之间具有多对多联系。

2.一个结点具有多个双亲等,层次模型表示这类联系的方法很笨拙,只能通过引入冗余数据或创建非自然的数据结构来解决。

对插入和删除操作的限制比较多,因此应用程序的编写比较复杂。

3.查询子女结点必须通过双亲结点。

4.由于结构严密,层次命令趋于程序化。

可见用层次模型对具有一对多的层次联系的部门描述非常自然,直观容易理解,这是层次数据库的突出优点。

网状模型的优点主要有:

1.能够更为直接地描述现实世界,如一个结点可以有多个双亲。

结点之间可以有多种上联第。

2.具有良好的性能,存取效率较高。

缺点主要有:

1.结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握。

2.网状模型的DDL,DML复杂,并且要嵌入某一种高级语言中,用户不容易掌握,不容易使用。

6四、数据库系统结构1.数据库系统的三级模式结构:

外模式、模式和内模式。

三级模式结构:

外模式、模式和内模式。

模式也称逻辑模式,是数据库中全体数据的逻辑结构和牲的描述,是所有用户的公共数据视图。

外模式也称子模式或用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图是与某一应用有关的数据的逻辑表示。

内模式也称存储模式,是一个数据库只有一个内模式。

它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。

2.三级模式之间的二级映像:

外模式/模式映像、模式/模式映像.3.数据库管理系统的主要功能有

(1)数据库定义功能;

(2)数据组织、存储和管理;(3)数据操纵功能;(4)数据库的事务管理和运行管理;(5)数据库的建立和维护功能等等DDL:

数据定义语言数据定义语言DML:

数据操纵语言数据操纵语言DCL:

数据控制语言4.什么叫数据与程序的物理独立性?

什么叫数据与程序的逻辑独立性?

数据与程序的物理独立性:

当数据库的存储结构改变了(例如采用了更先进的存储结构),数据库管理员修改模式内模式映像,使模式保持不变,当数据库的存储结构改变时,由数据库管理员对模式/内模式映像做相应改变,以保持模式不变,从而应用程序也不必改变,保证了数据与程序的物理独立性。

数据与程序的逻辑独立性:

当模式改变时,数据库管理员修改有关的外模式模式映像,使外模式保持不变,应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性重难点:

画画ER图,图,实体、联系、实体联系的属性,以及实体间的对应关系重点掌握1、工厂物资管理E-R图示例考点二关系数据库考点二关系数据库一、关系模型的基本概念1.关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。

32.基本术语:

域:

域是一组具有相同数据类型的值的集合。

元组:

关系中的每个元素是关系中的元组。

属性:

关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域。

由于域可以相同,为了加以区分,必须对每列起一个名字,称为属性(Attribute)。

候选码:

若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码主码:

若一个关系有多个候选码,则选定其中一个为主码(Primarykey)。

外部码:

设F是基本关系R的一个或一组属性,但不是关系R的码,如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外部码(Foreignkey),简称外码。

关系模式:

关系的描述称为关系模式)。

关系:

在域D1,D2,Dn上笛卡尔积D1D2Dn的子集称为关系。

关系是关系模式在某一时刻的状态或内容。

关系模式是静态的、稳定的,而关系是动态的、随时间不断变化的,因为关系操作在不断地更新着数据库中的数据。

关系数据库:

关系数据库也有型和值之分。

关系数据库的型也称为关系数据库模式,是对关系数据库的描述,它包括若干域的定义以及在这些域上定义的若干关系模式。

关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常就称为关系数据库。

3.关系的三类完整性约束三类完整性约束

(1)实体完整性;

(2)参照完整性;(3)用户定义的完整性。

二、关系代数1.关系代数是一种抽象的查询语言,它是用关系的运算来表达查询的。

2.运算符种类:

集合运算符()、专门的关系运算符()、算术比较符()和逻辑运算符()。

3.关系代数的运算按运算符的不同可分为传统的集合运算和专门的关系运算两类。

4.传统的集合运算是二目运算,包括交、并、差和笛卡尔积四种运算。

并(Union):

RS=t|tRtS,t属于R或t属于S。

差(Difference):

R-S=t|tRt不属于S。

交(Intersection):

RS=t|tRtS。

广义笛卡尔积:

r1r2专门的关系运算包括选择、投影、连接、除运算等。

1)选择(Selection)选择运算给出满足给定谓词(条件)的元组。

用小写希腊字母来表示选择运算,而将谓词写作的下标,并在后的括号中给出作为参数的关系。

记作:

F(R)=t|tRF(t)=True例如,我们要找出职员表中所有广东省的员工,则写作:

籍贯=广东(职员表)。

通常允许在选择谓词中进行比较,使用的比较运算符是、和。

另外,还可以用连词and()和or()将多个谓词合并成一个较大的谓词。

2、投影(Projection)关系R上的投影是从R中选择出若干属性列组成新的关系,投影后会取消原有关系中的某些列或玩组。

记作:

A(R)=tA|tR例如,查询职员所在的姓名和部门:

姓名,部门(职员表)。

3、连接(Join)从两个关系的笛卡尔积中选取属性间满足一定条件的元组。

常用的有等值连接和自然连接两种。

这里要记住,自然连接需取消重复列,其它连接操作只须考虑行。

等值连接与自然连接的区别和联系:

等值连接是从关系R与S的笛卡尔积中选取A、B属性值相等的那些元组。

自然连接是一种特殊的等值连接,它要求两个关系到中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。

44.关系代数的基本运算有哪些?

在八种关系代数运算中:

并、差、笛卡尔积、投影、选择五种运算为基本的运算。

其他三种运算,即交、连接和除均可用这五种基本运算来表达。

三、关系演算1.关系演算分为元组关系演算和域关系演算。

考点三系数据库标准语言SQL考点三系数据库标准语言SQL一、SQL概貌,特点及其相关基本概念1.SQL(StructuredQueryLanguage),即结构化查询语言,是关系数据库的标准语言。

2.SQL包括:

数据查询、数据操纵、数据定义和数据控制。

3.SQL语言的特点:

(1)综合统一

(2)高度非过程化(3)面向集合的操作方式(4)以同一种语法结构提供两种使用方式(5)语言简洁,易学易用。

4.基本表是本身独立存在的表,在SQL中一个关系就对应一个表。

视图是从一个或几个基本表导出的表。

视图本身不独立存储在数据库中,是一个虚表。

即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。

视图在概念上与基本表等同,用户可如同基本表那样使用视图,可以在视图上再定义视图。

在数据库的三级模式中,外模式对应于视图和部分基本表,模式对应于基本表,内模式对应于存储文件。

二SQL数据定义功能1.SQL的数据定义功能包括定义表、定义视图和定义索引。

SQL语言使用CREATETABLE语句建立基本表,ALTERTABLE语句修改基本表,DROPTABLE语句删除基本表;使用CREATEINDEX语句建立索引,DROPINDEX语句删除索引;使用CREATEVIEW语句建立视图,DROPVIEW语句删除视图。

三、SQL数据查询功能1.SQL提供了SELECT语句进行数据库的查询。

有以下几种形式:

(1).无条件查询:

获取表中的全部信息

(2).防止选取重复行(用distinct消除重复行)和使用别名(可用as)(3).条件查询WHERE子句,比较运算符(/=/!

=),逻辑运算符(NOT/AND/OR)特殊运算符(between/in/like/%/_/null)(4).查询结果排序Orderby列名ASC升/DESC降默认ASC(5).信息汇总特殊函数、groupby,having子句特殊函数有:

COUNTAVGSUMMINMAX一般COUNT是记录元组的行数或个数;在有groupby时COUNT*表示记录每个小组的个数而不是全部的个数2.连接查询连接查询是关系数据库中最主要的查询,包括广义笛卡尔积、等值连接查询(含自然连接查询)、非等值查询、自身连接查询、外连接查询和符合条件查询等。

3.嵌套查询

(1).一个SELECTFROMWHERE语句成为一个查询块。

将一个语句块嵌套在另一个查询快的WHERE子句或HAVING短语中的查询称为嵌套查询。

(2).嵌套查询的使用场合:

条件未知和存在依赖数据。

(3).在嵌套查询中,子查询的SELECT语句不能有ORDERBY子句,ORDERBY只能对最终查询进行排序。

(4).不关子查询(如带有IN的)、相关子查询(如带有比较运算符的子查询)、含ANY/ALL/EXISTS谓词的子查询4.集合查询集合操作主要包括并操作UNION、交操作INTERSECT和差操作EXCEPT。

四、数据更新插入数据INSERT、修改数据UPDATE、删除数据DELETE5五、视图的定义和作用1.视图是从一个或几个基本表(或视图)导出的表。

它与基本表不同,是一个虚拟表。

数据库中只存放视图的定义,而不存放试图对应的数据。

2.创建视图:

CREATEVIEW3.删除视图:

DROPVIEW注意:

如果所删除的视图还导出了其他视图,则使用CASCADE级联删除语句,把该视图和有它导出的视图一起删除。

4.更新视图:

INSERT/DELETE/UPDATE注意:

对视图的更新最终都转化成对基本表的更新。

WITHCHECKOPTION表示对试图进行更新时,保证了所作的更新满足视图定义中的条件,若不满足则拒绝执行该操作。

5.在关系数据库中,并不是所有的视图都可以更新。

因为有些视图的更新不能唯一有意义地转换成对相应基本表的更新,例如我们要修改某学生的平均成绩,必须修改各科成绩,而我们无法知道哪些课程成绩的变化导致了平均成绩的变化。

6.如果视图是从多个基本表使用联接操作导出的,则不允许更新。

如果导出的视图使用了分组和聚合操作,也不允许更新。

如果视图是从单个基本表使用选择和投影操作导出的,并且包括了基本表的主键或某个候选键,则可以执行操作。

常见问题分析:

常见问题分析:

1、在确定用实体集还是联系集时,一个可采用的原则是什么?

在确定用实体集还是联系集时一个可采用的原则就是:

当描述发生在实体间的行为时最好采用联系集。

2、关系和表是一回事吗?

严格地说,关系和表不一样。

关系是一系列域上的笛卡尔积的子集,是一个集合。

既然关系是集合就不允许在集合中有重复的元组。

按照课件的解释表可以看成是由一行一行的内容组成的一个格式,每个表有多个列,每列有唯一的列名,而每个表也有一个唯一的名字。

值得注意的是在关系数据库系统中,表中允许有重复的行存在,即允许有重复的记录。

3、NULL是表示一个属性值非法吗?

不对,NULL是一个合法的属性值。

它表示该属性的值为空值,空值的含义有两层意思,一是表示属性没有值;二是表示属性的值未知。

当属性值未知时还有两种情况,一是值缺失,表示属性有值,且占用一个空格,但是我们目前还没有该值的信息;二是不知道该属性有没有值。

4、在关系代数和SQL中对查询结果的重复行的处理一样吗?

不一样。

关系代数的运算结果仍然是一个关系,绝对不允许重复的元组在关系代数的结果中出现。

而在SQL中,去掉查询结果中的重复行是一件非常耗时的操作,因此允许在SQL的查询结果中保留重复的行。

可以通过DISTINCT选项说明SQL的查询结果是否要保留重复的行。

5、数据库中的视图和关系有什么区别?

视图是虚关系,在DBMS中只保存定义视图的SQL语句,而不保存视图的具体数据。

当在查询中用到视图时,DBMS会根据其保存的视图的定义(即SQL语句)来得到有关的数据。

如果在DBMS中保存视图的数据,这样的视图称之为实体化视图。

而关系在DBMS中不仅存储有其定义,而且还存储有实实在在的数据典型例题:

典型例题:

SQL查询语句涉及SQL语句的主要功能。

数据定义(DDL):

createdropalter;数据操纵(DML):

insertupdatedelete,数据控制(DCL):

revokegraint1建立一个“学生”表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成。

其中学号不能为空,值是唯一的,并且姓名取值也唯一。

CREATETABLEStudent(SnoCHAR(5)NOTNULLUNIQUE,SnameCHAR(20)UNIQUE,SsexCHAR

(1),SageINT,SdeptCHAR(15);2建立一个“学生选课”表SC,它由学号Sno、课程号Cno,修课成绩Grade组成,其中(Sno,Cno)为主码。

CREATETABLESC(SnoCHAR(5),CnoCHAR(3),Gradeint,Primarykey(Sno,Cno),FOREIGNKEY(Sno)REFERENCESS(Sno),6FOREIGNKEY(Cno)REFERENCESC(Cno);注意:

常用约束的写法,留意其中关键字的间隔次序,以及标点符号的使用Foreignkey和和unique的区别的区别:

Primarykey在建立的时候会默认地建立此field的索引,且此primarykey可以作为作为另外的表的foreignkey。

Primarykey一定是notnull,而unique则没有此限制3单表查询:

查询所有列,部分列,使用聚合函数,对结果排序,对结果分组查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别。

SELECTSname,SsexFROMStudentWHERESdeptIN(IS,MA,CS);关于语句的使用类似于正则表达式,其中的表示任意多的字符“”表示以“1开头2结尾的一个字符串”,但是若被匹配的语句中有“%”,则进行转义。

“_”表示任何一个字符,“_”则表示一个下划线。

逻辑运算中and的优先级高于or5个重要的集合函数:

个重要的集合函数:

ALL为默认值为默认值计数COUNT(DISTINCT|ALL*)COUNT(DISTINCT|ALL)计算总和SUM(DISTINCT|ALL)计算平均值AVG(DISTINCT|ALL)求最大值MAX(DISTINCT|ALL)求最小值MIN(DISTINCT|ALL)Groupby的使用,作用在查询中间结果多表查询多表查询连接查询,嵌套查询,集合查询。

嵌套查询,嵌套查询,返回数值只有一个时,可以使用逻辑运算符,返回值为多个时使用any,all,exists,(not)in另外exist与in同义all与notin同义Select*from学生where性别=女and年龄all(select年龄fromfrom学生where性别=男)查询结果为年龄小于所有男生的女生设职工-社团数据库有三个基本表:

职工(职工号,姓名,年龄,性别);社会团体(编号,名称,负责人号,活动地点)参加(职工号,编号,参加日期)查找没有参加任何团体的职工情况;Select*from职工wherenotexists(select*from参加where参加.职工号=职工.职工号);查找参加了全部社会团体的职工情况;Select*from职工wherenotexists(select*from社会团体wherenotexists(select*from参加where参加.职工号=职工.职工号and参加.编号=社会团体.编号);查找参加了职工号为1001的职工所参加的全部社会团体的职工的职工号。

Select职工号from职工wherenotexists(select*from参加1where1.职工号=1001andnotexists(select*from参加2where2.编号=1.编号and2.职工号=职工.职工号);相关子查询Select姓名from学生s,成绩g,wheres.学号=g.学号and课程号=C01Select姓名from学生swhereexists(select*from成绩where学号=s.学号And课程号=C01)7两者效果一样.集合运算:

集合运算:

Union并运算查询所有男学生和男教师的姓名年龄SelectName,AgefromTeacherwhereSex=maleUnionSelectName,AgefromStudentwhereSex=maleIntersect交运算SelectName,AgefromTeacherIntersectSelectName,AgefromStudent查询既是学生也是老师的人员的姓名和年龄Minus差运算注意两个语句的前后顺序查询不是学生的老师。

对调次序后则是不是老师的学生SelectName,AgefromTeacherMinusSelectName,AgefromStudent集合运算中orderby的使用ORDERBY子句只能用于对最终查询结果排序,不能对中间结果排序任何情况下,ORDERBY子句只能出现在最后对集合操作结果排序时,ORDERBY子句中用数字指定排序属性错误写法SELECT*FROMStudentWHERESdept=CSORDERBYSno(不能对中间结果排序)UNIONSELECT*FROMStudentWHERESage=19ORDERBYSno;(不能对中间结果排序)正确写法SELECT*FROMStudentWHERESdept=CSUNIONSELECT*FROMStudentWHERESage=90GROUPBYSnoHAVINGCOUNT(*)=3;在S_G视图中查询平均成绩在90分以上的学生学号和平均成绩8SELECT*FROMS_GWHEREGavg=90;S_G视图定义:

CREATEVIEWS_G(Sno,Gavg)ASSELECTSno,AVG(Grade)FROMSCGROUPBYSno;错误:

SELECTSno,AVG(Grade)FROMSCWHEREAVG(Grade)=90GROUPBYSno;正确:

SELECTSno,AVG(Grade)FROMSCGROUPBYSnoHAVINGAVG(Grade)=90;考点四数据库安全性考点四数据库安全性1.数据库的安全性数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。

2.计算机安全标准级别划分:

A1、B3、B2、B1、C2、C1、D(级别由高到底排列且高级兼容低级)3.实现数据库安全性控制的常用方法常用方法有:

用户标识和鉴别、存储控制、视图机制、审计加密等。

4.存取控制:

包括两部分定义用户权限和合法权限检测自主存取控制自主存取控制DAC方法:

定义各个用户对不同数据对象的存取权限。

当用户对数据库访问时首先检查用户的存取权限。

防止了不合法用户对数据库的存取。

强制存取控制强制存取控制MAC方法:

每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一个级别的许可证。

系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。

5.自主存取控制采用GRANT语句向用户授予权限,用REVOKE语句收

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1