mysql高级
文章平均质量分 73
Gxbalunn
这个作者很懒,什么都没留下…
展开
-
Mysql高级-触发器
触发器触发器是一种特殊的存储过程,他不需要用户去直接调用,而是在对表增删改后自动执行的存储过程。特点:与表关联。定义在指定表上,这个表被称为触发器表。自动激活触发器。当对表中的数据执行增、删、改操作时,如果对表上的这个特定操作定义了触发器,该触发器自动执行,这时不可撤销的。不能直接调用。与存储过程不同,触发器不能直接调用,也不能传递或接收参数。作为事务的一部分。触发器与激活触发器的语句一起作为对一个单一事务来对待,可以从触发器中的任何位置回滚。定义触发器的语法规则create trigg原创 2021-08-21 17:49:44 · 406 阅读 · 0 评论 -
Mysql高级-视图&存储过程&函数
存储过程概述如果实现用户某些需求需要一组复杂SQL语句时,可以将这组复杂SQL语句集写在数据库中,由JDBC调用来执行这组SQL语句。把编写在数据库中的SQL语句集称为存储过程。存储过程是事先经过编译并存储在数据库中的一段SQL语句的集合。调用存储过程简化了引用开发人员的很多工作,减少了数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。存储过程类似Java中的方法,需要先定义,使用时调用。存储过程可以定义参数,参数分为IN、OUT、INOUT三种类型。IN类型的参数表示接受调用者原创 2021-08-21 17:30:47 · 214 阅读 · 0 评论 -
Mysql高级-锁机制
锁机制概述首先来看两个事务的写操作之间的相互影响。隔离性要求同一时刻只能有一个事务对数据进行写操作,InnoDB通过锁机制来保证这一点。基本原理:事务在修改数据之前,需要先获得相应的锁;获得锁之后,事务便可以修改数据;该事务操作期间,这部分数据是锁定的,其他事务如果需要修改数据,需等待当前事务提交或回滚后释放锁。行锁和表锁按照粒度,锁可以分为表锁、行锁以及其他位于二者之间的锁。表锁在操作数据时会锁定整张表,并发性能较差;行锁只锁定要操作的数据,并发性能好。但是由于加锁本身需要消耗资源(获得锁、检原创 2021-08-18 16:24:27 · 90 阅读 · 0 评论 -
Mysql高级-事务
事务概述事务是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。在Mysql中只有使用了InnoDB数据库引擎的数据库或表才支持事务。事务处理可以用来维护数据库的完整性,保证成批的sql语句要么全部执行,要么全部不执行。事务用来管理insert、update、delete语句。特性一般来说,事务是必须满足4个条件(ACID):原子性(Atomicity,或称为不可分割性)、一致性(Consistency)、隔离性(Isolation,又称为独立性)、持久性(Durabili原创 2021-08-03 17:21:58 · 173 阅读 · 0 评论 -
Mysql高级-索引
索引在Mysql中,索引由数据库表中一列或多列组合而成,创建索引的目的是为了优化数据库的查询速度。其中,用户创建的索引指向数据库中具体数据所在的位置。当用户通过索引查询数据库中的数据时,不需要遍历所有数据库中的所有数据。这样大幅提高了查询效率。为什么使用索引?索引就像书的目录,查找内容时不必逐页翻阅就能快速的找到所需内容。优势提高数据检索效率,降低数据库的IO成本;通过索引列对数据库进行排序,降低数据排序成本,降低CPU消耗。劣势实际上索引也是一张表,存储了主键和索引字段,并指向实体表的原创 2021-08-03 15:34:36 · 115 阅读 · 0 评论 -
Mysql高级-概述
Mysql的数据用各种不同的技术存储在文件中。这些技术中的每一种技术都使用不同的存储机制、索引技术、锁定水平,并且最终提供广泛的不同的功能和能力。通过选择不同的技术,能够获得额外的速度或者功能,从而改善应用的整体功能。这些不同的技术以及配套的相关功能在MySql中被称作存储引擎(也称作表类型)。MySql默认配置了许多不同的存储引擎,可以预先设置或者在MySql服务器中启用。你可以选择适合于服务器、数据库和表格的存储引擎,以便在选择如何存储你的信息、如何检索这些信息以及你需要你的数据结合什么性能和功能的时原创 2021-08-03 14:21:32 · 115 阅读 · 0 评论