
数据库
RabbitCotton
这个作者很懒,什么都没留下…
展开
-
数据库-实现篇 第十九讲
数据库的故障类型及其影响DBMS利用内存和外存的存储体系进行数据库管理在内存中,分为程序数据和系统数据数据元素:1数据元素=1磁盘块/内存页,也可以更小或更大事务的四个特性原子性、一致性、隔离性、持久性故障恢复涉及到如何保证原子性、持久性事务故障:程序(事务)自身运行错误引起的故障,影响该程序(事务)本身系统故障:由于掉电、非正常关机引起的故障介质故障:介质损坏引起的故障,影响内存和介质内存储的数据数据库故障恢复的宏观思路保障事物的持久性和原子性事务故障的恢复:撤销事务(消除未原创 2020-07-07 00:57:16 · 243 阅读 · 0 评论 -
数据库-实现篇 第十八讲 未完结
为什么要进行并发控制为什么要进行并发控制——数据库可能存在不一致三种典型的不一致现象(1)丢失修改(2)不能重复读(3)脏读并发控制及相应的事务处理技术是DBMS的核心技术什么是事务事务:数据库管理系统提供的控制数据操作的一种手段,保证数据库的正确性、一致性事务的宏观性:一个存取或改变数据库内容的程序的一次执行,或着说一条或多条SQL语句被看成一个事务事务一般由程序员提出,因此有开始和结束,结束需要提交或撤销一个事务可以处理一个或一条记录一段程序语句可能原创 2020-07-06 20:48:20 · 222 阅读 · 0 评论 -
数据库-实现篇 第17讲
为什么要查询优化数据库执行效率三个层面的优化:(1)语义优化:利用模型的语义及完整性规则,优化查询(2)语法优化——逻辑层优化:利用语法结构,优化(3)执行优化——物理层优化查询优化的总体思路逻辑层查询优化策略尽可能将投影、选择操作移动到乘积前面从树叶到树根反映了操作的先后顺序关系代数操作等价变换定理关系代数的5个基本操作:并、差、积、选择、投影两两交换,验证是否等价关系代数操作的七个等价定理:(1)连接与连接,积与积的交换律(2)连接与连接,积和积的结合律原创 2020-07-06 08:32:37 · 123 阅读 · 0 评论 -
数据库-实现篇 第十六讲
两趟扫描算法的基本思想整个关系一元操作的问题:任何一个元组需要与所有元组进行比较,才能确定最终结果。这些需要内存内存不够存储整个关系怎么办??——两趟 / 多趟算法两趟算法基本思路:(1)第一趟:划分子集,使子集具有某种特性(有序/具有相同散列值)。处理好之后将结果写回磁盘将磁盘上的数据重新建立数据结构(2)处理全局性的内容操作。多子集归并、相同散列值操作...原创 2020-07-05 07:53:51 · 290 阅读 · 0 评论 -
数据库-实现篇 第十五讲
查询实现算法概述——关系代数操作数据库查询基本思想:数据库的核心操作(1)基本动作:并、差、积、选择、投影(2)基于关系代数提出的SQL语句,转化为关系代数的组合操作(3)程序执行机构进行解释、拆解查询实现和查询优化:(1)将SQL语句转化为关系代数表达式转化后,若先执行连接操作,则会造成爆炸,故DBMS不能按照该顺序进行执行尽量把选择、投影操作移到乘积的前面去执行(2)改变操作次序(3)为每一个操作选择一个优化的程序进行执行——物理查询优化(4)执行物理查询优化原创 2020-07-05 07:38:56 · 191 阅读 · 0 评论 -
数据库-实现篇 第十四讲
索引的概念和作用索引:在存储表的基础上的一种辅助存储结构。索引项=索引字段+行指针(索引字段为TABLE中的某些列)对应的存储表称为主文件,索引表称为索引文件。索引文件不改变存储表的物理结构索引文件的组织:(1)排序索引文件——索引字段值排序(2)散列索引为念主文件的组织:(1)堆文件(2)排序文件(3)散列文件(4)聚簇文件可根据不同属性、属性组建立不同的索引文件索引文件比主文件小很多,可以一次性装入内存由索引时,更新操作必须同步更新索引文件访问时间、插入时间、删除时间、原创 2020-07-04 19:42:12 · 261 阅读 · 0 评论 -
数据库-实现篇 第十三讲(含习题)
存储体系DBMS读取、存取磁盘上的数据磁盘结构特性宏观实现查询、微观算法数据库以表、记录访问数据,内存以磁盘块存储数据存储体系回顾如何高效率存储?——数据组织与索引如何快速检索?——查询实现和查询优化数据库存储体系大多数情况下,数据库保存在磁盘上,讲内容读入到缓冲区被CPU处理磁盘块的组织:第一个磁盘块在目录中保存;操作系统 把文件按照文件块存储在磁盘块上;内存管理(主存)(1)一条记录的地址=存储单元地址=内存地址=页面:页面内偏移量(2)页面=块原创 2020-07-04 10:21:01 · 221 阅读 · 0 评论 -
数据库-设计篇 第十二讲(含习题)
数据库设计——需求分析原创 2020-07-04 00:20:50 · 837 阅读 · 0 评论 -
数据库-设计篇 第十一讲(含习题)
为什么要数据库建模设计软件实践 VS 用户期望需求理解(1)数据需求理解与表达(2)处理规则需求理解数据建模 与 概念模型概念模型——观念世界 E-R / O-O数据模型——计算机世界 关系、网状、层次数据建模:抽象抽象:理解、区分、命名、表达E-R模型E-R模型:实体-联系模型需要理解、区分、表达什么要素;用什么表达方法;实体与实例实体:客观存在并可相互区分的事物,实体有类、个体的概念属性:刻画实体的特性属性的分类:(1)单一属性与符合属性(2原创 2020-07-03 23:25:39 · 1199 阅读 · 0 评论 -
数据库-基础篇 第七讲(含习题)未完结
IN 子查询(NOT)IN子查询:表达式 【NOT】in (子查询)例:列出张三、王三同学所有信息:Select *From StudentWhere Sname in(‘张三’,’王三‘);列出选秀了001号课程学生的学号和姓名:Select S#, SnameFrom StudentWhere S# in(Select S# From SC Where C#=‘001’);列出选秀了001号课程和002号课程的学生的学号:Select S#From SCWhere C#原创 2020-07-03 21:23:03 · 546 阅读 · 1 评论 -
数据库-基础篇 第六讲(含习题)
SQL语言概述(1)DDL语句引导词 Create Alter Drop(2)DML语句引导词:Insert, Delete, Update, Select(3)DCL语句引导词:Grant(授权), Revoke(收回授权)交互式SQL→嵌入式SQL→动态SQL利用SQL建立数据库学生选课数据库建立数据库(1)定义数据库和表1)create database 数据库名;create database SCT;2)create table 表名(列名 数据类型 [Primar原创 2020-07-03 11:52:37 · 5639 阅读 · 3 评论 -
数据库-基础篇 第五讲(含习题)
关系元组演算关系演算以逻辑谓词演算为基础关系演算可分为关系元组演算和关系域演算(1)关系元组演算以元组变量作为谓词变量的基本对象(2)关系域演算以域变量作为谓词变量的基本对象元组演算公式的基本形式:P(t)的递归定义:(1)原子公式(2)P是公式,非P是公式(3)公式的与、或也是公式(4)存在量词、全称量词(5)运算符优先级:(6)公式只限于以上形式元组演算公示的运用存在量词与全称量词存在量词、全称量词:起到验证的作用...原创 2020-07-02 23:20:17 · 1686 阅读 · 0 评论 -
数据库-基础篇 第四讲(含习题)
什么是关系代数(1)并、差、笛卡儿积、选择、投影、更名(2)交、连接、关系除关系代数操作以一个多多个关系为输入,输出结果也是关系关系代数操作的分类:(1)集合操作:并、交、差、笛卡尔积(2)纯关系操作:投影、选择、连接、关系除并相容性某些关系代数操作,如并、差、交等,需要满足并相容性并相容性:(1)R和S属性数目相同(2)对应的第 i 个属性域相同并操作差操作广义笛卡尔积RS=SR选择操作选择满足某些条件的行,结果仍为关系选择操作时运算符的优先级:原创 2020-07-02 21:56:30 · 2727 阅读 · 0 评论 -
数据库-基础篇 第一讲(含习题)
数据库(1) 如何存储数据(2) 如何检索查询,以获取有用信息数据库 源于表,–关系及关系模型Table的构成:表名,表标题,表内容,行/元组/记录,列/字段/属性/数据项关系模式=表名+表标题关系/表=表名+表内容+表标题数据库:相互之间有关联关系的Table集合关系数据库 / 图像数据库 / 工程数据库数据库系统数据库系统(工作环境)数据库:数据(表)集合数据库管理系统:系统软件数据库应用:应用程序数据库管理员( – 数据库管理系统)计算机基本系统数据库管理原创 2020-07-01 22:31:36 · 705 阅读 · 0 评论