
数据库系统概论
文章平均质量分 65
数据库理论学习
逸枚俗人
不要盲目相信这篇博客中的内容
展开
-
第一章 创建数据库和表
冲突可串行化判别算法数据库是共享资源, 多个事务对共享资源的并发访问可能会造成数据不一致问题, 因此需要并发控制。并发控制的目的是解决数据不一致问题, 即得到一个正确的调度序列,而封锁则是产生正确调度序列的方法. 封锁是指一个事务在对某个数据库对象操作之前先向系统发出请求,对其加锁. 根据锁的类型, 在事务释放该对象的锁之前, 其它事务不能更新或读取该对象.封锁是产生正确调度序列的方法, 而可串行化则是判断一个给定的调度序列是否正确. 由于没有高效判别一个序列是否可串行化的算法, 通过附加一些额外条件原创 2022-05-03 15:29:06 · 702 阅读 · 0 评论 -
第二章 SQL简单查询
文章目录SQL简单查询基础查询去重模糊查询多表联合查询SQL简单查询基础查询#查询student表中的所有学生信息select *from student;#查询student表中所有学生的姓名以及年龄select Sname, Sagefrom student;#查询学生表中所有年龄大于等于19岁的学生年龄和姓名select Sage,Snamefrom studentwhere Sage >= 19;#查询教师表中所有工资少于1500元或者工资大于2000元, 并且原创 2022-05-03 15:47:37 · 246 阅读 · 0 评论 -
第三章 SQL增删改
文章目录SQL增删改插入单个元组插入批量元组插入更新SQL增删改插入单个元组插入语法: insert into <表名>[(列名 [, 列名] ...)] values (值 [,值] ...)#插入student表数据insert into studentvalues ('98030101', '张三', '男', 20, '03', '980301');insert into studentvalues ('98030102', '张四', '女', 20, '03', '原创 2022-05-03 15:50:14 · 367 阅读 · 0 评论 -
第四章 SQL子查询
文章目录子查询子查询概述子查询功能子查询分类编写子查询的技巧单行子查询和多行子查询单行子查询多行子查询不相关子查询和相关子查询不相关子查询相关子查询EXISTS和NOT EXISTSIN子查询some/all子查询(NOT) EXISTS子查询重点理解: NOT EXISTS全称命题与存在命题的转化分组计算和聚集计算子查询子查询概述出现在某一子句中的select语句称为子查询子查询功能判断某一元素是否是某一个集合的成员判断某一个集合是否包含另一个集合测试集合是否存在重复元素, 集合是否为空等原创 2022-05-03 15:58:04 · 645 阅读 · 0 评论 -
第五章 SQL实现关系代数运算
SQL实现关系代数运算并-交-差的处理不带ALL表示去重, 而带有ALL表示保留冗余运算SQL语法并运算UNION [ALL]交运算INTERSECT [ALL] (mysql中未实现)差运算EXCEPT [ALL] (mysql中未实现)#学过002号课程的同学 或 学过003号课程的同学select Snofrom sct.scwhere Cno = '002'unionselect Snofrom sct.scwhere Cno = '0原创 2022-05-03 16:03:11 · 1180 阅读 · 0 评论 -
第六章 数据库完整性和触发器
数据库完整性数据库完整性概述数据完整性是DBMS应保证的DB的一种特性在任何情况下的正确性, 有效性和一致性广义完整性语义完整性狭义完整性并发控制安全控制DB故障恢复狭义完整性实体完整性主键不能取NULL参照完整性外键只能取NULL或对应表的主键中的值用户自定义完整性为什么会引发数据库完整性的问题不正当的数据库操作, 如:输入错误操作失误程序处理失误数据库完整性管理的作用防止和避免数据库中不合理数据的出现DBMS应尽可能自动防止DB中语义不合理现象原创 2022-05-03 16:06:51 · 1187 阅读 · 0 评论