1.信息:人脑对现实世界事务的存在方式、运动状态及事物间的联系的抽象反映。
2.数据:由用于记录信息的可识别的符号组合的,是信息的具体表现形式。
3.数据库管理技术的三个阶段:人工管理;文件系统;数据库系统4.DBS:数据库系统包括:DB(数据库,特点:集成性,共享性),用户(包括DBA),软件系统(包括DBMS),硬件系统5.三级模式二级映像:三级模式:1、(逻辑/概念)模式,一个数据库只有一个,是数据库中全体数据的逻辑结构和特征的描述。
2.外/子/用户模式,一个数据库可有多个(保证安全性),是概念模式的某一部分的抽象表示3.内/存储/物理模式,一个数据库只有一个,是对数据库存储结构的描述,数据在数据库内部的表达方式。
二级映像:1.外模式/模式映像(保证了数据与程序间的逻辑独立性)。
2.模式/内模式映像(保证了数据的物理独立性)。
优点:1.保证数据库的独立性,模式/内模式分开(物理独立性),模式/外模式分开(逻辑独立性)。
2.简化了用户接口。
3.有利于数据共享。
4.有利于数据的安全保密。
6.数据库管理系统(DBMS)主要功能:1.数据定义2.数据操纵3.数据库运行管理4.数据库的建立和维护5.数据通信接口6.数据组织、存储和管理7.DBMS的组成:1.语言编译处理程序(定义,操纵)2.系统运行控制程序()3.系统建立、维护程序4.数据字典8.数据模型:定义:是一种用来描述数据,组织数据和对数据进行操作的模型。
分类:可分为概念模型和逻辑模型(逻辑模型由DBMS转换为物理模型)组成要素:数据结构;数据操作;数据的完整性约束(一组完整性规则的集合)常用模型:层次模型、网状模型、关系模型、面向对象模型9.关系模型优缺点:优点:1.有严格的数学理论基础2.数据结构简单,用户易懂易用,用关系描述实体及实体间的联系3.存储路径对用户透明,具有更高的数据独立性,更好的安全保密性,简化了程序员工作。
缺点:查询效率不如非关系模型。
10.候选码/候选关键字/候选键:能唯一标识关系中元组的一个属性或属性集。
11.主码/主关系键/主键/关系键:候选码中被选择作为查询、插入或删除元组的操作变量。
12.外码/外部关系键:一个关系中参照了另一个关系的主码的一个或一组属性。
13.关系数据库:依照关系模型建立的数据库。
14.关系模式:关系模式是对关系的型的定义。
包括关系的属性构成、各属性的数据类型、属性间的依赖、元组语义及完整性约束。
R—关系名;U—组成该关系的属性名集合;D—属性组U中属性所来自的域;DOM—属性向域的映像集合;F—属性间的数据依赖关系集合15.关系的完整性约束:1.实体完整性:主关系键的值不能为空或部分为空。
2.参照完整性:一个关系的外键要么为空,要么取与被参照关系对应的主码值。
3.用户自定义的完整性:针对某一具体关系数据库的约束条件(非空,唯一,布尔)。
16.关系的性质:1.每个列具有相同的数据类型2.不同的列可以出自同一个域,但必须是不同的名字3.列的顺序可以任意交换4.行的顺序也可以任意交换5.关系中不允许出现相同的元组6.分量必须取原子值,即属性不能再分17.关系代数:选择和投影:18.SQL(structured query language)功能:数据查询;定义;操纵;控制。
19.基本表:一个关系对应一个基本表。
20.视图:从一个或几个基本表导出的一个虚表。
作用:1.简化用户的操作2.使用户能以多角度看待同一数据3.对重构数据库提供了逻辑独立性4.能够对机密数据提供安全保护5.可以更清晰的表达查询。
21.函数依赖定义:关系模式中各属性之间相互依赖,相互制约的联系成为数据依赖,其中包括函数依赖,即关系模式中属性之间的一种逻辑依赖关系。
分类:完全函数依赖;部分函数依赖;传递函数依赖,是规范化理论的依据和规范化程度的准则。
22.范式:符合某一种级别的关系模式的集合。
1NF(属性不可再分)>>消除非主属性对键的部分函数依赖>>2NF>>消除非主属性对键的传递函数依赖>>3NF>>消除主属性对键的部分和传递函数依赖>>BCNF23.安全性控制方法:1.用户标识和鉴定2.用户存取权限控制3.定义视图4.数据加密5.审计24.事物:用户定义的一个数据库操作序列,是恢复和并发控制的基本单位。
语句:BEGIN TRANSACTION(开始)COMMIT(提交,正常结束)ROLLBACK(发生故障,回滚,重新开始)特征:1.原子性(不可分割)2.一致性(一个一致状态到另一个)3.隔离性(不被其他事务干扰)4.持久性(提交后,对数据的改变是持久的)25.并发操作的三种不一致性:1.丢失更新2.污读(读取未提交的后又被撤销的更新数据,即脏数据)3.不可重读26.封锁:当一个事物在对某个数据对象进行操作之前,必须获得相应的锁,以保证数据操作的正确性和一致性类型:排他型封锁(写封锁/X锁);共享封锁(读封锁/S锁)协议:一级封锁(丢失更新);二级封锁(污读);三级封锁(不可重读)活锁:某事物对某数据请求X锁时,由于其他事物对该数据的操作而处于永久等待。
解决:先来先服务死锁:多个等待状态的事物,在能够进行之前,所等待的数据被其中某事物所封锁。
产生条件:互斥;不可抢占;部分分配;循环等待预防:一次加锁法;顺序加锁法27.数据库设计任务:根据用户需求研制数据库结构;内容:结构设计,行为设计;方法:新奥尔良法(主流);步骤:系统需求分析阶段(收集用户信息和要求,并加以规格化和分析);概念结构设计阶段(把用户的信息要求统一到一个概念模型中,E—R图);逻辑结构设计阶段(将概模转换为某DBMS所支持的数据模型,关系模式);物理结构设计阶段(建立一个完整的能实现该逻辑数据模型的数据库结构)---------------前四个为分析设计阶段---------------数据库实施阶段(编写,调试应用程序)数据库运行与维护阶段(收集记录运行数据,评价性能,进一步调整)---------------后两个为实现运行阶段----------------28.系统需求分析阶段任务:1.调查分析用户活动。
2.收集分析需求数据,确定系统边界3.编写系统分析报告方法:1.自顶向下(简单实用);2.自底向上数据流图:表达了数据和处理过程的关系数据字典:对系统中数据的详细描述,是各类数据结构和属性的清单。
包括:1.数据项2.数据结构3.数据流4.数据存储5.处理过程29.概念结构设计阶段:方法:(1)自顶向下(2)自顶向上(3)逐步扩张(4)混合策略步骤:(1)进行数据抽象,设计局部E-R,即设计用户视图。
(2)集成各局部E-R模型,形成全局E-R模型,即视图集成。
两种数据抽象:分类;聚集E-R图三种冲突:属性冲突;命名冲突;结构冲突30.物理结构设计阶段:确定物理结构:1.存储记录结构的设计决定存储结构的三要素:存取时间,存取空间,维护代价2.访问方法的设计3.数据存放位置的设计4.系统配置的设计表的操作:1.建立例:完整定义的学生表SCREATE TABLE S( SN0 CHAR(6) CONSTRAINT S_ Prim PRIMARY KEY,(设学号为主键)SN CHAR(8) NOT NULL,SEX CHAR(2) NOT NULL DEFAULT’男’,(默认男)Age INT NOT NULL,CHECK (Age BETWEEN 15 AND 50),(Age允许范围在15~50)Dept CHAR(10) NOT NULL,Score NUMERIC(4,1))2.修改例:增加班号列,使Score在0~100间,将SN列加宽到10个字符并删除主键ALTER TABLE SADDClass_N0 CHAR(6),(增加列)CONSTRAINT Score_Chk CHECK(Score BETWEEN 0 AND 100),(增加完整性定义) ALTER COLUMNSN CHAR(10) (修改列)DROP CONSTRAINT S_Prim(删除完整性定义)3.删除 DROP TABLE S视图的操作:1.创建例1:CREATE VIEW Sub_TAS SELECT TN0,TN ,ProfFROM TWHERE Dept=’计算机’: 例2:CREATE VIEW S_Avg(Score)AS SELECET SN0, Avg(Score)FROM SCGROUP BY SN02. 修改例:ALTER VIEW S_SC_C(SN0,SN,CN,Score)AS SELECT S.SN0,SN,CN,ScoreFROM S,C,SCWHERE S.SN0=SC.SN0 AND 0=03.删除 DROP VIEW <视图名>4.查询例:SELECT TN0, TN (视图Sub_T中职称为教授的教师号和姓名)FROM Sub_TWHERE Prof=’教授’5.更新添加(INSERT): INSERT INTO Sub_(TN0,TN,Prof)VALUES (‘T6’,‘李丹’,‘副教授’)修改(UPDATE): UPDATE Sub_T (刘伟的职称改成副教授) SET Prof=’副教授’WHERE (TN =’刘伟’)删除(DELETE): DELETE FROM Sub_T(删除刘伟老师的记录) WHERE TN=’刘伟’。