- 博客(59)
- 收藏
- 关注
原创 SQL ConcurrencyControl(并发控制)
Example:Schedule ASchedule BSchedule CSchedule DSchedule E从数据约束一致性来看,模式A、B、C是可串行化的,D的结果显然不满足条件,但是更改一下D的运算,E就能通过数据约束一致性检查,所以从逻辑上讲模式D和E都是错误的,所以总结来说,判断一个调度是否正确,应该是检查调度中的read和write的执行顺序会不会导致数据约束不一致的可能。
2025-06-11 09:47:13
762
原创 SQL Indexes(索引)
索引是加速数据库查询的关键数据结构,主要有聚焦索引(每表只能有一个,物理存储顺序与索引一致)和非聚焦索引(SQL Server默认类型)。虽然能加速查询,但会降低数据修改效率。非聚焦索引通过存储聚焦索引关键字定位数据,当物理存储顺序改变时需重建索引。
2025-06-03 09:35:02
1228
原创 SQL Views(视图)
数据库视图的概念、类型及基本操作视图分为虚拟视图(仅查询构造)和物化视图(实际存储)两种类型。通过INSTEAD OF触发器实现虚拟视图修改的方法
2025-06-02 15:51:39
839
1
原创 Real SQL Programming
SQL在实际程序中的应用通常通过存储过程和嵌入式SQL实现,而非直接终端查询。存储过程(PSM)将常规语句与SQL结合,扩展了数据库功能,具有共享逻辑、屏蔽细节、提升安全性和性能等优势。其参数模式分为IN(输入)、OUT(输出)和INOUT(双向),通过OUT参数获取返回值。这种方式比直接SQL查询更高效灵活。
2025-05-30 11:28:55
1197
1
原创 SQL(Database Modifications)
数据库修改操作主要包括插入、删除和更新三类。插入可使用INSERT语句添加单条或多条记录,支持属性列表和默认值设置;删除通过DELETE语句移除满足条件的记录,过程分为标记和删除两阶段(重点考虑涉及到子查询的的删除语句);更新操作用UPDATE修改指定记录的属性值。这些操作不返回结果,而是直接改变数据库状态。
2025-05-29 15:45:52
881
原创 More SQL(Focus Subqueries、Join)
介绍了SQL子查询,包括子查询在FROM和WHERE子句中的使用、返回单行结果的子查询。一个重要的思考:子查询和连接之间能否相互转换?IN、EXISTS、ANY、ALL等运算符在子查询中的应用,以及UNION、INTERSECT、EXCEPT等集合操作重点是内连接(INNER JOIN)和外连接(OUTER JOIN)的区别
2025-05-28 15:39:18
697
原创 Introduction to SQL
SQL语言是一种结构化查询语言,包含数据查询(DQL)、数据控制(DCL)、数据定义(DDL)和数据操纵(DML)四类操作。其核心特点是操作对象为集合,语法简洁(仅9个核心功能),支持单表和多表查询。SELECT-FROM-WHERE是基本查询结构,其中FROM确定数据源,WHERE进行筛选,SELECT执行投影。SQL还支持模糊匹配(LIKE)、空值处理(NULL)、三值逻辑运算和聚合函数(SUM/AVG/COUNT等)。多表查询通过FROM子句实现,GROUP BY支持分组计算,HAVING用于分组后过
2025-05-27 19:43:05
716
1
原创 Multivalued Dependencies
多值依赖(MVD)是指在关系模式中,当X属性值相同时,Y属性值可交换且交换后的元组仍存在于关系中,且Y值独立于其他属性。MVD规则包括函数依赖可提升为MVD,以及互补规则。第四范式(4NF)要求非平凡MVD中的X必须是超键,它能消除MVD带来的冗余。4NF比BCNF更强,满足4NF必满足BCNF。分解4NF时,若X→→Y违反4NF,可将关系分解为XY和其余属性。例如饮酒者关系通过分解逐步满足4NF。
2025-05-25 11:09:10
843
原创 Design Theory for Relational Databases(关系型数据库)
本文摘要: 函数依赖(FD)是关系数据库中描述属性间约束的重要概念,X→Y表示X属性集决定Y属性集。文章详细介绍了FD的特性,包括右侧拆分规则(X→A1A2...An等价于多个X→Ai)、超键与候选键的定义(能函数决定所有属性的最小集合),以及通过闭包算法推导隐含FD的方法。重点讨论了BCNF和3NF范式分解:BCNF要求每个FD的左侧必须是超键,而3NF放宽条件允许右侧是主属性。文章通过酒馆数据库案例演示了BCNF分解过程,并比较了两种范式在保持无损连接和依赖保留方面的差异。最后简要提及2NF要求非主属性
2025-05-24 10:49:51
610
原创 Entity-Relationship Model(实体-关系模型)
E/R模型(实体-关系模型)用于数据库模式设计,通过实体关系图(E/R图)直观展示数据库结构。实体集表示相似实体的集合,属性为实体的简单值,关系集则连接多个实体集。E/R图通过矩形、椭圆和菱形分别表示实体集、属性和关系。关系类型包括多对多、多对一和一对一,通过箭头表示关系的多重性。E/R模型还支持子类、弱实体集和键的设计,子类继承超类属性,弱实体集依赖其他实体集的键来唯一标识。设计时应避免冗余,合理选择实体集和属性,并限制弱实体集的使用。最终,E/R设计可转换为关系数据库设计,实体集和关系分别映射为表和关系
2025-05-21 15:27:48
594
原创 Java-高阶-异常处理
详细讲解Java中的异常处理机制:exception中的try、catch、finallg语句块;throws抛出异常、自定义异常类
2025-04-14 11:02:14
954
原创 Java-高阶-集合框架
主要介绍Java中的集合框架,包括:Collection接口、Set接口及其实现类、List接口及其实现类、Map接口及其实现类ArrayList、LinkedList、HashSet、TreeSet、HashMap、简单的多线程封装语句
2025-04-13 09:16:32
682
原创 MySQL-触发器
触发器是一个与表有关的数据库对象,能够在insert、update、delete后,触发并执行触发器中定义的SQL语句集合。可以协助应用在数据库端确保数据的完整性,日志查询,数据校验。使用OLD、NEW来引用触发器中发生变化的记录内容。现在的触发器还只是行级触发器,不支持语句级触发器。影响了多行数据,触发器将被多次触发影响了多少行数据,只被触发一次。
2025-03-31 20:57:59
458
1
原创 MySQL-存储过程
MySQL存储过程,由一系列SQL语句经过编译后的指令集合,通过调用这个集合可以简化开发者的流程。最重要的是,能够减少数据在数据库和应用服务器之间的传输,提高数据处理的效率。系统变量、用户自定义变量、局部变量流程控制(if、case、while、repeat、loop)游标cursor
2025-03-26 20:33:10
1631
1
原创 MySQL-sql优化
主要讲一下SQL优化:insert优化、主键优化、order by优化、group by优化、limit优化、count优化、update优化这都是经常用到的优化手段
2025-03-21 14:33:16
1012
原创 MySQL-索引
MySQL索引,B+Tree,慢查询日志,prfile详情,explain执行计划,最左前缀法则,索引失效情况,覆盖索引,前缀索引,索引的选择性
2025-03-18 14:39:32
1092
原创 Java概述
本文主要简单介绍了Java相较于其他传统编译型语言的优势,以及Java编程的一些基本语法,包括Java的面向对象,类,方法,包;基本数据类型,类型的转换,变量类型等
2025-03-07 15:29:26
664
原创 MySQL-函数
SQL语言的常见函数的介绍:数值函数(CEIL\FLOOR\MOD\RAND\ROUND)、日期函数(CURDATE\CURTIME\NUW\YEAR\MONTH\DAY\DATE_ADD\DATEDIFF)、流程函数(IF\IFNULL\CASE WHEN THEN ELSE)
2025-02-28 14:00:46
836
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人