2024.10.25
外连接:外连接运算是连接运算的扩展,可以处理缺失的信息。外连接运算有3种,即左外连接、右外连接和全外连接
左外连接:取出左侧关系中所有与右侧关系中任一元组都不匹配的元组,用空值NULL来填充所有来自右侧关系的属性,构成新的元组,将其加入自然连接的结果中
右外连接:取出右侧关系中所有与左侧关系中任一元组都不匹配的元组,用空值NULL来填充所有来自左侧关系的属性,构成新的元组,将其加入自然连接的结果中
全外连接:完成左外连接和右外连接的操作。即填充左侧关系中所有与右侧关系中任一元组都不匹配的元组,填充右侧关系中所有与左侧关系中任一元组都不匹配的元组,将产生的新元组加入自然连接的结果中
SQL支持三级模式结构: 视图对应外模式、基本表对应模式、存储文件对应内模式
数据定义语言(DDL):SQL DDL提供定义关系模式和视图、删除关系和视图、修改关系模式的命令交互式数据操纵语言(DML):SQL DML提供查询、插入、删除和修改的命令
事务控制:SQL提供的定义事务开始和结束的命令
嵌入式SQL和动态SQL:用于嵌入到某种通用的高级语言(C、C++、Java、PL/I、Cobol、VB等)中混合编程。其中SQL负责操纵数据库,高级语言负责控制程序流程
完整性:SQL DDL包括定义数据库中的数据必须满足的完整性约束条件的命令,对于破坏完整性约束条件的更新将被禁止
权限管理:SQL DDL中包括说明对关系和视图的访问权限的命令
数据依赖是通过一个关系中属性间值的相等与否体现出来的数据间的相互关系,是现实世界属性间相互联系和约束的抽象,是数据内在的性质,是语义的体现。函数依赖则是一种最重要、最基本的数据依赖
函数依赖:设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对R(U)的任何一个可能的关系r,r中 不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数决定Y或Y函数依赖于X,记作X→Y
非平凡的函数依赖:如果X→Y,但YX,则称X→Y是非平凡的函数依赖平凡的函数依赖:如果X→Y,但Y X,则称X→Y是平凡的函数依赖
完全函数依赖:在R(U)中,如果X→Y,并且对于X的任何一个真子集X',都有X'不能决定Y,则称Y对X完全函数依赖,记作XY
部分函数依赖:如果X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作XY。部分函数依赖也称局部函数依赖
递依赖:在R(U,F)中,如果X→Y,YX,Y不能函数决定X,Y→Z,则称Z对X递依赖
码:设K为R(U, F)中的属性的组合,若K→U , 且对于K的任何一个真子集K',都有K'不能决定U,则K为R的候选码,若有多个候选码,则选一个作为主码。候选码通常也称为候选关键字
主属性和非主属性:包含在任何一个候选码中的属性叫做主属性, 否则叫做非主属性外码:若R(U)中的属性或属性组X非R的码,但X是另一个关系的码,则称X为外码
函数依赖的公理系统(Armstrong公理系统)。设关系模式R(U,F)中,U为属性集,F是U上的一组函数依赖,那么有以下的推理规则:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人