数据库系统包括数据库和数据库管理系统
数据库系统是数据库开发的工作环境
数据库是数据的集合
数据库管理系统管理数据库
完整性控制、并发控制和通讯控制
不包括处理机控制
数据库定义、数据库操纵、数据库控制和数据库维护
数据库语言及其编译、查询实现与查询优化、事务处理功能以及数据存储与索引等其他功能
三级模式:内模式(存储模式,物理模式),外模式(用户模式,局部模式),概念模式(逻辑模式,全局模式)
两层映像:E-C映像(外模式映射到概念模式)、C-I映像(概念模式映射到内模式)
两个独立性:逻辑数据独立性、物理数据独立性
逻辑数据独立性:当概念模式发生变化时,可以通过E-C映像的调整,从而不需要改变外部模式,用户的应用程序也不需要改变
物理数据独立性:当内部模式发生变化时,可以通过C-I映像的调整,从而不需要改变概念模式和外部模式,用户的应用程序也不需要改变
数据 ⊆ 数据模型 ⊆ 模式
数据模型是对模式结构的抽象,模式是对数据结构形式的抽象
模式(概念模式、逻辑模式):数据库中全体数据的逻辑结果和特征的描述,是所有用户的公共数据视图
数据模型:是现实世界数据特征的抽象,或者说是现实世界的数据模拟。数据库中,用数据模型来抽象地表示现实世界的数据和信息
数据的组织是否依赖于具体的应用程序
数据存取是否可以记录或记录的集合为单位进行操作
不同文件之间以及不同记录之间是否有联系
允许复杂的数据类型存在
突破了关系模型第一范式的限制
既支持记录集合的操作,又支持面向对象的操作
关系模型是一种数据的逻辑结构,采用表描述事物的属性,并通过表之间的关联,表示事物之间的联系;
联系规范化的关系
是数据库的三大经典数据模型之一, 也是现在大多数商品化数据库系统所 仍然使用的数据模型
标准的数据库语言(SQL语言)是建立在关系模型基础之上的, 数据库领域的众多理论也都是建立在关系模型 基础之上的
关系是一组域的笛卡尔积的子集,笛卡尔积中具有某一方面意义的那些元组被称作一个关系。因为表储存 的就是符合某种意义的关系的抽象集合,也就是说表是关系的载体,表是符合某种结构的多个关系的集 合,所以称表是关系
完整性是对主码外码以及有特殊要求的一些数据的约束.实体完整性要求主码不能为空值;参照完整性要求外码为空值,或者为另一个码的主码。因为外码通常是联系两个关系的纽带;实体完整形保证数据库每个数据都是可以找到的,即可识别的。
完整性是对主码外码以及有特殊要求的一些数据的约束.实体完整性要去主码不能为空值。
实体完整性是对主码而言,关系的主码中的属性值不能为空值。关系中的元组对应到现实世界相互之间可区分的一个个个体,这些个体是通过主码来唯一标识的,若主码为空,则出现不可标识的个体,这是不容允许的;参照完整性是对外码而言,外码可以取空值,如果不为空值那必然是另一个关系的主码,如果关系R1的某个元组t1是参照了关系R2的某个元组t2,则t2必须存在。
候选键是唯一一个在关系模式里能够标识元组并且不含多余属性的属性集。候选键的作用是:①保证实体的完整性;②加快数据库的操作速度;③在表中添加新记录时,表会自动检查新纪录的主键值,不允许该值与其他记录主键值重复;④表自动按主键值的顺序显示表中的记录,如果没有定义主键,则按输入记录的顺序显示表中的记录。
查询姓张的可以使用 Like ‘张%’ 来进行查询;查询名字中带一个英字的可以使用 Like ‘%英%’ 来进行查询, SQL中的Select语句是通过在检索条件中引入运算符 Like 来表示模糊查询的,Like后跟一个给定字符串模式,然后找出匹配给定字符串的字符串。其中给定字符串中可以出现%, _ 等匹配符,其中% 匹配零个或多个字符, _ 匹配任意单个字符, 为转义字符,用于去掉一些特殊字符的特定含义,使其被作为普通字符看待,如用 % 去匹配字符% ,用_去匹配字符_
Select Sname From Student,SC,Course
Where Student.S# =SC.#andSC.C# =Course.C#andCname=’数据库系统’
需要注意连接条件的正确表示和更名操作
属于数据定义语言DDL的是:CREATE、DROP、ALTER
属于数据操纵语言DML的是:UPDATE、INSERT、DELETE
属于数据查询语言DQL的是:SELECT
属于数据控制语言DCL的是:GRANT、REVOKE
视图是外模式加上外模式到概念模式的映像;创建 view 就是实现外模式,as 子查询就完成了到 E-C 映像;视图能简化用户操作,使用户能多种角度看待同一数据,且对重构数据库提供了一定程度的逻辑独立性,另外能够对机密数据提供安全保护和更清晰的表达查询。