数据库及其应用复习资料Word文件下载.docx
《数据库及其应用复习资料Word文件下载.docx》由会员分享,可在线阅读,更多相关《数据库及其应用复习资料Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
域是值的集合。
在一个关系中,可以唯一确定每个元组的属性或属性组称为候选键(CandidateKey),从候选键中挑选一个作为该关系的主键(PrimaryKey)。
一个关系中存放的另一个关系的主键称为外键(ForeignKey)。
并不是任何的二维表都可以称为关系。
关系具有以下特点:
∙关系中的每一列属性都是原子属性,即属性不可再分;
∙关系中的每一列属性都是同质的,即每一个元组的该属性取值都表示同类信息;
∙关系中的属性间没有先后顺序;
∙关系中元组没有先后顺序;
∙关系中不能有相同的元组。
关系模型,就是对一个数据处理系统中所有数据对象的数据结构的形式化描述。
将一个系统中所有不同的关系模式描述出来,就建立了该系统的关系模型。
关系数据库(RelationDataBase),是依据关系模型建立的数据库,是目前各类数据处理系统中最普遍采用的数据库类型。
依照关系理论设计的DBMS,称为关系DBMS。
数据库设计指:
对于给定的应用环境,设计构造最优的数据库结构,建立数据库及其应用系统,使之能有效地存储数据,对数据进行操作和管理,以满足用户各种需求的过程。
数据库设计采用的基本方法是结构化设计方法,这种方法将开发过程看成一个生命周期,也称为生命周期法。
其核心思想是将开发设计过程分成若干个步骤,主要包括:
系统需求调查与分析、概念设计、逻辑设计、物理设计、实施与测试、运行维护等几个阶段。
所谓数据模型,就是对客观世界的事物以及事物之间联系的形式化描述。
概念模型使用用户易于理解的概念、符号、表达方式来描述事物及其联系,它与任何实际的DBMS都没有关联,是面向用户的;
同时,概念模型又易于向DBMS支持的数据模型转化。
概念模型也是对客观事物及其联系的抽象,也是一种数据模型。
概念模型是现实世界向面向计算机的数据世界转变的过渡。
目前常用的有实体联系模型。
实体联系(ER,EntityRelationship)模型是常用的对现实世界进行形式化描述的概念模型,它有一套基本的概念、符号和表示方法,面向用户在ER模型中,主要包括实体、属性、域、实体集、实体标识符以及实体联系等概念。
实体(Entity)指现实世界中任何可相互区别的事物。
属性(Attribute)指实体某一方面的特性。
属性的取值范围称为域(Domain)。
用实体名及其属性名集合来描述同类实体,称为实体型(EntityType)。
用来唯一确定或区分实体集中每一个实体的属性或属性组合称为实体标识符(Entity
Key),或称为实体码。
实体间的联系方式可以分为如下三类。
(1)一对一联系。
(2)一对多联系。
(3)多对多联系。
ER模型通过描述系统内所有实体及其属性以及实体间联系来建立MIS的概念模型。
转化方法可以归纳为以下几点。
①
每个实体型都转化为一个关系模式。
给该实体型取一个关系模式名,实体型的属性成为关系模式的属性。
实体标识符成为关系模式的主键。
②
实体间的每一种联系都转化为一个关系模式。
转换的方式是:
给联系取一个关系模式名,与联系相关的各实体的标识符成为该关系模式的属性,联系自身的属性成为该关系模式其余的属性。
③
对以上转化后得到的关系模式结构按照联系的不同类别进行优化。
联系有三种类型,转化为关系模式后,与其他关系模式可进行合并优化。
1:
1的联系,一般不必要单独成为一个关系模式,可以将它与联系中的任何一方实体转化成的关系模式合并(一般与元组较少的关系合并)。
n的联系也没有必要单独作为一个关系模式,可将其与联系中的n方实体转化成的关系模式合并。
m:
n的联系必须单独成为一个关系模式,不能与任何一方实体合并。
在数据库技术发展过程中有三种重要的数据模型,分别是层次模型、网状模型和关系模型。
完整描述数据模型包括三个要素,即:
数据结构、数据操作和数据约束。
数据结构规定数据的存储和表示方式。
在关系模型中只有关系这一种结构。
数据操作指对数据的运算和操作。
在关系模型中有关系代数和关系谓词演算。
关系代数与关系谓词演算在功能上是等价的。
本书简要介绍关系代数。
数据约束指对关系中存放的数据进行限制和约束,以保证存放数据的正确性和一致性。
在关系模型中包括实体完整性规则、参照完整性规则和用户定义的完整性规则。
在数据库输入和存放数据时,最主要的是要满足三类数据完整性约束规则:
实体完整性、参照完整性和用户定义的完整性。
实体完整性规则:
定义了主键的关系中,不允许任何元组的主键属性值为空值。
参照完整性规则:
关系S的主键作为外键出现在关系R中,它在R中的取值只能符合两种情形之一:
或者为空值(Null);
或者在关系S的主键中存在对应的值。
用户定义的完整性规则:
用户根据实际需要对数据库中的数据或者数据间的相互关系可以定义约束条件,所有这些约束构成了用户定义的完整性规则。
投影、选择、连接是关系操作的核心运算;
域完整性规则属于用户定义的完整性规则。
Access2003数据库文件的扩展名是.mdb。
Access数据库,由7个对象组成。
这7个对象是:
表、查询、窗体、报表、页、宏、模块。
除页外,其他6个对象都保存在数据库文件.mdb中。
∙表:
对数据库中相关联的数据进行组织、表示,是数据库中数据存储的逻辑单位。
∙查询:
建立在表(或其他查询)之上的、对数据进行运算或处理后的数据视图。
∙窗体:
实现对数据的格式化处理界面。
∙报表:
实现数据的格式化打印输出。
∙页:
以符合浏览器页面格式的方式输入或输出数据。
∙宏:
一系列操作的组合,用来将一些经常性的操作作为一个整体执行。
∙模块:
利用VBA(VBApplication)语言编写的实现特定功能的程序段。
表是Access数据库的核心。
表由表名加以标识和区别,每个表的名称不可以重复。
表中的行称为记录(Record),表中的列称为字段(Field)。
在Access中,标识字段称为主键,而放在一个表中的另外一个表的主键字段,起两个表联系的作用,称为外键。
表之间的联系也称为关系。
“组”是组织管理数据库对象的一种方式。
组由从属于该组的数据库对象的快捷方式组成。
对于数据库中数据的完整性保护,最简单和有效的方法是进行备份。
备份即将数据库文件在另外一个地方保存一份副本。
当数据库由于故障或人为原因被破坏后,将副本恢复即可。
数据类型规定数据的取值范围、表达方式和运算种类。
在数据操作和运算中直接使用的确定的数据值称为常量。
当需要使用文本值常量时,必须用ASCII的单引号或双引号括起来。
单引号或双引号称为字符串定界符,必须成对出现。
日期、时间或日期时间的常量表示要用“#”作为标识符。
日期时间之间用空格隔开。
日期的间隔符号还可以用“/”。
是/否型作为逻辑值的常量,可以取的值有:
true与false、on与off、yes与no等。
True、on、yes存储的值是-1,false、off与no存储的值为0。
超链接型。
用于存放超链接地址。
定义的超链接地址最多可以有四部分,各部分间用数字符号(#)分隔,含义是:
显示文本#地址#子地址#屏幕提示。
Access对于表名、字段名和控件名等对象的命名制定了相应的规则。
命名规定如下:
名称长度最多不超过64个字符,名称中可以包含字母、汉字、数字、空格及特殊的字符(除句号(.)、感叹号(!
)、重音符号(`)和方括号([])之外)的任意组合,但不能包含控制字符(ASCII值为0到31的控制符)。
首字符不能以空格开头。
在Access项目中,表、视图或存储过程的名称中不能包括双引号("
为字段、控件或对象命名时,最好确保新名称不要和Access保留字相同。
所谓保留字,就是Access自己已使用的词汇。
字段属性
属性项
设置说明
字段大小
定义文本型长度、数字型的子类型、自动编号的子类型
格式
定义数据的显示格式和打印格式
输入掩码
定义数据的输入格式
小数位数
定义数字型和货币型数值的小数位数
标题
在数据表视图、窗体和报表中替代字段名显示
默认值
指定字段的默认取值
有效性规则
定义对于字段存放数据的检验约束规则,是一个逻辑表达式
有效性文本
当字段输入或更改的数据没有通过检验时,要提示的文本信息
必填字段
“是”或“否”选择,指定字段是否必须有数据输入
索引
指定是否建立单一字段索引。
可选择无索引、可重复索引、不可重复索引。
允许空字符串
对于文本、备注、超链接类型字段,是否允许输入长度为0的字符串
Unicode压缩
对于文本、备注、超链接类型字段,是否进行Unicode压缩
新值
只用于自动编号型,指定新的值产生的方式:
递增或随机
输入法模式
定义焦点移至字段时,是否开启输入法
智能标识
定义智能标识。
是否型和OLE对象没有智能标识
数据库系统一般包括三大功能:
数据定义功能、数据操作功能、数据控制功能。
关系数据库中进行数据操作的语言是结构化查询语言(StructureQueryLanguage),简称SQL。
在Access中,实现数据库操作功能的数据库对象就是“查询”。
表是数据组织存储的概念,查询是关于数据库操作的概念,查询以表为基础。
Access数据库将查询分为“选择查询”和“动作查询”两大类。
用户使用选择查询从指定表中获取满足给定条件的记录;
使用动作查询从指定表中筛选记录以生成一个新表或者对指定表进行记录的更新、添加或删除操作。
Access的“选择查询”有两种基本用法:
一是根据条件,从数据库中查找满足条件的数据,并进行运算处理。
二是对数据库进行重新组织,以支持用户的不同应用。
Access可以命名保存查询的定义,这就得到数据库的查询对象。
查询对象可以反复执行,查询结果总是反映表中最新的数据。
查询所对应的结果数据集被称为“虚表”,是一个动态的数据集。
SQL具有完善的数据库处理功能,主要功能如下:
(1)数据定义功能。
SQL可以方便地完成对表及关系、索引、查询的定义和维护。
(2)数据操作功能。
操作功能包括数据插入、删除、修改和数据查询。
SQL可以满足数据库操作的各种需要。
(3)数据控制功能。
SQL可以实现对数据库的安全性和完整性控制。
SQL的主要特点如下。
(1)高度非过程化,是面向问题的描述性语言。
用户只须将需要完成的问题描述清楚,具体处理细节由DBMS自动完成。
即用户只须表达“做什么”,不用管“怎么做”。
(2)面向表,运算的对象和结果都是表。
(3)表达简洁,使用词汇少,便于学习。
SQL定义和操作功能使用的命令动词只有:
CREATE、ALTER、DROP、INSERT、UPDATE、DELETE、SELECT。
(4)自主式和嵌入式的使用方式,方便灵活。
(5)功能完善和强大,集数据定义、数据操纵和数据控制功能于一身。
(6)所有关系数据库系统都支持,具有较好的可移植性。
SQL命令语句包括定义命令:
CREATE、ALTER、DROP;
查询命令:
SELECT;
更新命令:
INSERT、UPDATE、DELETE。
在Access中,由运算符和运算对象组成的运算式称为表达式。
运算对象包括常量、输入参数、表中的字段等,运算符包括一般运算和函数运算。
Access事先规定了各类型数据运算的运算符。
(1)数字运算符。
数字运算符用来对数字型或货币型数据进行运算,运算的结果也是数字型数据或货币型数据。
表5-1中列出了各类数字运算符已经优先级。
表5-1
数字运算符及其优先级
优先级
运算符
说明
1
()
内部子表达式
4
*、/
乘、除运算
2
+、-
正、负号
5
mod
求余数运算
3
^
乘方运算
6
加、减运算
(2)文本运算符。
或称字符串运算符。
普通的文本运算符是:
“&
”或者“+”,两者完全等价。
其运算功能是将两个字符串联接成一个字符串。
其他文本运算使用函数。
(3)日期时间运算符。
普通的日期时间运算符只有“+”和“-”。
它们的运算功能如表5-2所示。
表5-2
日期和日期时间运算
结果及类型
<
日期>
+<
n>
或<
-<
日期时间型,给定日期n天后或n天前的日期
数字型,两个指定日期相差的天数
日期时间>
日期时间型,给定日期时间n秒后或n秒前的日期时间
数字型,两个指定日期时间之间相差的秒数
(4)比较测试运算符。
同类型数据可以进行比较测试运算。
可以进行比较运算的数据类型有:
文本型、数字型、货币型、日期时间型、是否型等。
运算符如表5-3所示,运算结果为是否型,即true或false。
由于Access中用0表示false,-1表示true,所以运算结果为0或-1。
表5-3
比较测试运算符
小于
BETWEEN…AND…
范围判断
=
小于等于
[NOT]LIKE
文本数据的模式匹配
>
大于
IS[NOT]NULL
是否空值
大于等于
[NOT]IN
元素属于集合运算
等于
EXISTS
是否存在测试(只用在表查询中)
不等于
文本型数据比较大小时,两个字符串逐位按照字符的机内编码比较,只要有一个字符分出大小,即整个串就分出大小。
日期型按照年、月、日的大小区分,数值越大的日期越大。
是否型只要两个值:
true和false,true小于false。
“BETWEENx1ANDx2”,x1为范围起点,x2为终点。
范围运算包含起点和终点。
LIKE运算用来对数据进行通配比较,通配符为“*”和“?
”(ANSISQL为“%”和“_”)。
对于空值判断,不能用等于或不等于NULL,只能用ISNULL或ISNOTNULL。
IN运算相当于集合的属于运算,用括号将全部集合元素列出,看要比较的数据是否属于该集合中的元素。
EXISTS用于判断查询的结果集合中是否有值。
(5)逻辑运算符。
逻辑运算是指针对是否型值true或false的运算,运算结果仍为是否型。
最早由布尔(Boolean)系统提出,所以逻辑运算又称为布尔运算。
逻辑运算符主要包括:
求反运算NOT、与运算AND、或运算OR、异或运算XOR等。
其中,NOT是一元运算,有一个运算对象,其他都是二元运算。
运算的优先级是:
NOT→AND
→OR→XOR。
可以使用括号改变运算顺序。
逻辑运算的规则及结果见表5-4。
在表中,a、b是代表两个具有逻辑值数据的符号。
表5-4
逻辑运算
a
b
NOTa
aANDb
aORb
aXORb
true
false
上述不同的运算可以组合在一起进行混合运算。
当多种运算混合时,一般是先进行文本、数字、日期时间的运算,再进行比较测试运算,最后进行逻辑运算。
函数包括函数名、自变量和函数值3个要素。
函数基本格式是:
函数名([自变量])。
函数名标识函数的功能;
自变量是需要传递给函数的参数,写在括号内,一般是表达式。
有的函数无需自变量,称为哑参,一般和系统环境有关,具有特指的不会混淆的内涵。
缺省自变量时,括号仍要保留。
有的函数可以有多个自变量,之间用逗号分隔。
Access常用函数
函数
返回值
INT(数值)
对数值进行取整
LEFT(文本表达式,数值)
从文本的左边取出指定位数的子字符串。
RIGHT(文本表达式,数值)
MID(文本表达式,
[数值1[,数值2]])
从文本中指定的起点取出指定位数的子字符串。
数值1指定起点,数值2指定位数。
LEN(文本表达式)
求出文本字符串的字符个数。
NOW()
返回当时系统的日期和时间值
DATE()
返回系统当天的日期
STR(数值,[长度,[小数位]])
把数值型数据转换为字符型数据。
在命令中,没有确定的值而需要在执行时输入的标识符就是参数。
C/S结构模式将应用系统分为两个部分:
客户机部分和服务器部分。
客户端的应用程序主要包括用户的操作界面,服务器端的应用程序则存储被用户访问的数据,同时为了使客户机能够更好地使用服务器上的数据,通常引入管理机制对数据进行逻辑上的分配和管理。
三层C/S结构将应用的三部分(表示部分,应用逻辑部分,数据访问部分)明确进行分割,使其在逻辑上各自独立,并且单独加以实现,分别称之为客户、应用服务器、数据库服务器。
“浏览器/服务(Browser/Server,B/S)”模式是三层C/S结构的一种特殊形式。
B/S模式日益成为应用的主流模式。
B/S结构是一种以Web技术为基础的新型的网络信息系统平台模式,客户端安装和运行浏览器软件,而Web服务软件和数据库服务器安装在服务器端。
Web服务器是管理Web页和各种Web文件,并为提出HTTP请求的浏览器提供HTTP响应的软件.
Web服务器上存储的Web页分为静态网页和动态网页。
动态网页又分为客户端动态网页和服务器端动态网页。
静态Web页其内容由一些HTML代码组成,内容明确和固定,并保存为.htm或.html文件。
用户访问静态网页时,Web服务器将直接将静态网页原样传送到客户浏览器上。
客户端动态Web页中包含一些指令代码,称为脚本,这些脚本代码在用户访问时才执行并可以根据不同的情况产生不同的结果。
脚本在客户端执行.
服务端动态网页包含的指令在服务器上执行,执行完毕后,将得到的结果生成HTML页传回客户端。
Web数据库将数据库技术与Web技术很好地融合在一起,使数据库系统成为Web的重要有机组成部分的数据库。
不同的软件一般都规定了本系统中数据的格式。
在实际应用时,为了充分利用不同软件的优势功能,需要在不同软件之间移动数据。
在Access应用时,凡是不以Access数据库存储格式存储、在其它程序中的数据就称为外部数据。
Access能够通过链接、导入和导出的方式使用外部数据资源。
①链接:
与另一个Access数据库表或不同格式的数据建立链接。
②导入:
将其它程序中的数据转换到Access数据库中,称为导入。
③导出:
将Access数据库表中的数据转换到其它应用程序中,称为数据的导出。
链接和导入方式使用外部数据时的区别:
链接以数据的当前文件格式使用它,即保持原文件格式不变,在Access中使用外部数据。
导入是对外部数据制作一个副本,并将副本移动到Access中,成为Access中的表来使用。