1/171.数据管理的几个阶段及其对比1人工管理阶段2.文件系统阶段3.数据库系统阶段2.数据库三级模式外模式、模式、内模式。外模式又称子模式或用户模式,对应于用户级。它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。矚慫润厲钐瘗睞枥庑赖。模式又称概念模式或逻辑模式,对应于概念级。它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述。聞創沟燴鐺險爱氇谴净。2/17内模式又称存储模式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的存储方式和物理结构,对应着实际存储在外存储介质上的数据库。残骛楼諍锩瀨濟溆塹籟。3.物理数据独立性和逻辑数据独立性物理独立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。即,数据在磁盘上怎样存储由DBMS管理,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变了,应用程序不用改变。酽锕极額閉镇桧猪訣锥。逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,即,当数据的逻辑结构改变时,用户程序也可以不变。彈贸摄尔霁毙攬砖卤庑。4.DB、DBMS、DBSDB:Database数据库:数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。謀荞抟箧飆鐸怼类蒋薔。DBMS:数据库管理系统:数据库管理系统(DatabaseManagementSystem)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS厦礴恳蹒骈時盡继價骚。DBS:数据库系统:DBS即DatabaseSystem,中文意为“数据库系统”,是指带有数据库并利用数据库技术进行数据管理的计算机系统。茕桢广鳓鯡选块网羈泪。数据库系统DBS一般由4个部分组成:①数据库,即存储在磁带、磁盘、光盘或其他外存介质上、按一定结构组织在一起的相关数据的集合。②数据库管理系统(DBMS)。它是一组能完成描述、管理、维护数据库的程序系统。它按照一种公用的和可控制的方法完成插入新数据、修改和检索原有数据的操作。鹅娅尽損鹌惨歷茏鴛賴。3/17③数据库管理员(DBA)。④用户和应用程序。5.DBMS的功能数据定义;数据操作;数据库的运行管理;数据组织、存储与管理;数据库的保护;数据库的维护;通信。6.数据库管理系统的组成、主要模块:存储管理和事务处理查询处理器:DDL编译器、DML编译器、嵌入式DML的预编译器和查询运行核心程序。存储管理器:权限和完整性管理器、事物管理器、文件管理器和缓冲区管理器。7.DBA及其作用DBA是对系统进行集中控制的人,被称为数据库管理员。主要作用有:模式定义;存储结构及存取方法定义;模式及物力组织的修改;数据访问授权;日常维护。8.数据模型(概念模型、结构模型)概念模型;逻辑模型;物理模型。概念模型(ConceptualDataModel),是面向数据库用户的现实世界的模型,主要用来描述世界的概念化结构。在概念数据模型中最常用的是E-R模型、扩充的E-R模型、面向对象模型及谓词模型。籟丛妈羥为贍偾蛏练淨。逻辑模型(LogicalDataModel),这是用户从数据库所看到的模型,是具体的DBMS所支持的数据模型,如网状数据模型(NetworkDataModel)、层次数据模型(HierarchicalDataModel)等等。此模型既要面向用户,又要面向系统,主要用于数据库管理系统(DBMS)的实现。預頌圣鉉儐歲龈讶骅籴。4/17物理模型(PhysicalDataModel),是面向计算机物理表示的模型,描述了数据在储存介质上的组织结构,它不但与具体的DBMS有关,而且还与操作系统和硬件有关。渗釤呛俨匀谔鱉调硯錦。9.关系模式关系的描述称为关系模式(RelationSchema)通常简记为:R(U)或R(A1,A2,…,An)铙誅卧泻噦圣骋贶頂廡。其中R为关系名,U为属性名集合,A1,A2,…,An为各属性名。10.超码、候选码、主码超码是一个或多个属性的集合,这些属性可以让我们在一个实体集中唯一地标识一个实体。如果K是一个超码,那么K的任意超集也是超码,也就是说如果K是超码,那么所有包含K的集合也是超码。擁締凤袜备訊顎轮烂蔷。候选码是从超码中选出的,自然地候选码也是一个或多个属性的集合。因为超码的范围太广,很多是我们并不感兴趣即无用处的。所以候选码是最小超码,它们的任意真子集都不能成为超码。贓熱俣阃歲匱阊邺镓騷。主码:从多个候选码中任意选出一个做为主码,如果候选码只有一个,那么候选码就是主码。11.强实体、弱实体及其区别其定义为一个实体对于另一个实体(一般为强实体,也可以是依赖于其他强实体的弱实体)具有很强的依赖联系,而且该实体主键的一部分或全部从其强实体(或者对应的弱实体依赖的强实体)中获得,则称该实体为弱实体。坛摶乡囂忏蒌鍥铃氈淚。注:在现实世界中,有时某些实体对于另一些实体有很强的依赖关系,即一个实体的存在必须以另一实体的存在为前提。前者就称为“弱实体”,后者称为“强实体”。比如在人事管理系统中,职工子女的信息就是以职工的存在为前提的,子女实体是弱实体,子女与职工的联系是一种依赖联系。蜡變黲癟報伥铉锚鈰赘。5/17表示方法:在ER模型中也称(实体-联系图(EntityRelationshipDiagram),弱实体用双线矩形框表示。与弱实体的联系用双线菱形框表示。買鲷鴯譖昙膚遙闫撷凄。注意:强实体与弱实体的联系只能是1:1或1:N。弱实体参与联系时应该是“完全参与”,因此弱实体与联系间的联系也画成双线边。綾镝鯛駕櫬鹕踪韦辚糴。12.关系代数基本操作:选择、投影、并、差、笛卡尔乘积、更名运算。附加的关系代数运算:集合交、连接(θ连接、自然连接)、除、赋值。拓展的关系代数:广义投影、聚集函数、外连接。13.自然连接、外连接及其适用场合自然连接:在连接运算当中,一种最常用的连接是自然连接。如果关系R与S具有相同的属性组B,且该属性组的值相等时的连接称为自然连接,。结果关系的属性集合为R的属性并上S减去属性B的属性集合R和S自然连接可记作:R⋈S={tr⌒ts|tr∈R∧ts∈S∧tr[A]=ts[B]}驅踬髏彦浃绥譎饴憂锦。自然连接也可看作是在广义笛卡尔积R×S中选出同名属性上符合相等条件元组,再进行投影,去掉重复的同名属性,组成新的关系。猫虿驢绘燈鮒诛髅貺庑。外连接:如果把舍弃的元组也保存在结果关系中,而在其他属性上空值,那么这种连接就叫外连接。如果只把左边关系R要舍弃的元组保留就叫左外连接,如果只把右边关系S中要舍弃的元组保留右外连接。锹籁饗迳琐筆襖鸥娅薔。自然连接与等值连接的区别6/171.等值连接中不要求相等属性值的属性名相同,而自然连接要求相等属性值的属性名必须相同,即两关系只有在同名属性才能进行自然连接。構氽頑黉碩饨荠龈话骛。2.等值连接不将重复属性去掉,而自然连接去掉重复属性,也可以说,自然连接是去掉重复列的等值连接。14.视图及其作用视图是从一个或几个基本表(或视图)导出的表。它与基本表不同,是一个虚表。数据库只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。輒峄陽檉簖疖網儂號泶。视图的作用1.视图能够简化用户的操作2.视图使用户能以多种角度看待同一数据3.视图对重构数据库提供了一定程度的逻辑独立性4.视图能够对机密数据提供安全保护5.适当的利用视图可以更清晰的表达查询。15.SQL标准的发展SQL-86:“数据库语言SQL”SQL-89:“具有完整性增强的数据库语言SQL”,增加了对完整性约束的支持SQL-92:“数据库语言SQL”,是SQL-89的超集,增加了许多新特性,如新的数据类型,更丰富的数据操作,更强的完整性、安全性支持等。尧侧閆繭絳闕绚勵蜆贅。SQL-3(99年):新的标准,增加对面向对象模型的支持7/1716.DDL、DML、DCLDDL(DataDefinitionLanguage数据定义语言)用于操作对象和对象的属性,这种对象包括数据库本身,以及数据库对象,像:表、视图等等,DDL对这些对象和属性的管理和定义具体表现在Create、Drop和Alter上。识饒鎂錕缢灩筧嚌俨淒。DML(DataManipulationLanguage数据操控语言)用于操作数据库对象中包含的数据,也就是说操作的单位是记录。如insert、update、delete等对记录的操作。凍鈹鋨劳臘锴痫婦胫籴。DCL(DataControlLanguage数据控制语句)的操作是数据库对象的权限,这些操作的确定使数据更加的安全。恥諤銪灭萦欢煬鞏鹜錦。17.嵌入式SQL、宿主语言嵌入式SQL(英文:EmbeddedSQL)是一种将SQL语句直接写入C语言等编程语言源代码中的方法。借此方法,可使得应用程序拥有了访问数据以及处理数据的能力。在这一方法中,将SQL文嵌入的目标源码的语言称为宿主语言。鯊腎鑰诎褳鉀沩懼統庫。18.ODBC、JDBC开放数据库连接(OpenDatabaseConnectivity,ODBC)JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。硕癘鄴颃诌攆檸攜驤蔹。19.数据库完整性及其主要措施数据库完整性(DatabaseIntegrity)是指数据库中数据的正确性和相容性,要防止不合语义的数据进入数据库。阌擻輳嬪諫迁择楨秘騖。保证数据库完整性的措施主要有:完整性约束、触发器。8/17完整性约束包括:非空约束、主键约束、check约束、唯一约束、参照完整性约束、断言。20.触发器及其功能触发器是一种特殊的存储过程,它在试图更改触发器所保护的数据时自动执行触发器有如下作用:可在写入数据表前,强制检验或转换数据。触发器发生错误时,异动的结果会被撤销。部份数据库管理系统可以针对数据定义语言(DDL)使用触发器,称为DDL触发器。可依照特定的情况,替换异动的指令(INSTEADOF)。21.数据库安全性及其主要措施数据库安全性:保护数据库,防止不合法的使用造成的数据泄露、更改或破坏。22.范式、各范式之间的关系范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,满足不同程度要求的为不同范式氬嚕躑竄贸恳彈瀘颔澩。9/17第一范式:第一范式是为了要排除重复组的出现,所采用的方法是要求数据库的每个列的值域都是由原子值组成;每个字段的值都只能是单一值。釷鹆資贏車贖孙滅獅赘。第二范式:它的规则是要求数据表里的所有数据都要和该数据表的键(主键与候选键)有完全依赖关系:每个非键属性必须独立于任意一个候选键的任意一部分属性。怂阐譜鯪迳導嘯畫長凉。第三范式:要求所有非键属性都只和候选键有相关性,也就是说非键属性之间应该是独立无关的。BCNF:BCNF与第三范式的不同之处在于:第三范式中不允许非主属性被另一个非主属性决定,但第三范式允许主属性被非主属性决定;而在BCNF中,任何属性(包括非主属性和主属性)都不能被非主属性所决定。谚辞調担鈧谄动禪泻類。任何一个BCNF必然满足:所有非主属性都完全函数依赖于每个候选键所有主属性都完全函数依赖于每个不包含它的候选键没有任何属性完全函数依赖于非候选键的任何一组属性23.函数依赖:完全依赖、部分依赖、传递依赖、多值依赖完全函数依赖:设X,Y是关系R的两个属性集合,X’是X的真子集,存在X→Y,但对每一个X’都有X’!→Y,则称Y完全函数依赖于X。嘰觐詿缧铴嗫偽純铪锩。10/17部分函数依赖:设X,Y是关系R的两个属性集合,存在X→Y,若X’是X的真子集,存在X’→Y,则称Y部分函数依赖于X。熒绐譏钲鏌觶鷹緇機库。传递函数依赖:设X,Y,Z是关系R中互不相同的属性集合,存在X→Y(Y!→X),Y→Z,则称Z传递函数依赖于X。鶼渍螻偉阅