首页 > 数据库 >数据库事务是什么?事务的四大特性是什么?

数据库事务是什么?事务的四大特性是什么?

时间:2023-11-15 12:45:12浏览次数:57  
标签:语句 事务 要么 数据库 一致性 执行 什么

数据库事务是什么?事务的四大特性是什么?

1.数据库事务

事务是一组原子性的 SQL 语句,或者说一个独立的工作单元。如果数据库引擎能够成功地对数据库应用该组操作的全部语句,那么就执行该组查询。如果其中任何一条语句因为崩溃或其他原因无法执行,那么所有的语句都不会执行。也就是说,事务内的语句,要么全部执行成功,要么全部执行失败。

简单的来说就是想让同一件事里的操作方法写在一块,要么一块都运行,要不就都不运行

2.事务特性(ACID)

  • 原子性(Atomicity):一个事务中的多个DML操作,要么同时执行成功,要么同时执行失败
  • 一致性(Consistency):事务执行之前和事务执行之后,数据库中的数据是一致的,完整性和一致性不能被破坏
  • 隔离性(Isolation):数据库允许多个事务同时执行(张三借Java书的同时允许李四借Java书),多个必行的事务之间不能相互影响
  • 持久性(Durability):事务完整之后,对数据库的操作是永久的

3.关于一致性

mysql事务“一致性”理解

通过查阅我认为的一致性是,程序与认知保持一致,数据库事务通过某些手段(条件约束、触发器等)来确保数据库与真实世界之间的正确映射

标签:语句,事务,要么,数据库,一致性,执行,什么
From: https://www.cnblogs.com/qy-blog/p/17833560.html

相关文章

  • MySQL Shell连接数据库报MySQL Error 1045 (28000)错误浅析
    这里简单总结一下mysqlshell访问数据库时报MySQLError1045(28000):Accessdeniedforuser'root'@'::1'(usingpassword:YES)的原因以及如何解决这个问题这里测试的环境为MySQL8.0.35,我们先来看看报错案例:$ mysqlsh -h localhost -P 7306 -u root -pPlease pr......
  • 智能装备生产线数据分析平台有什么功能
    在智能装备产线,各种设备的状态与生产数据实时反映了工厂的生产效率与产能水平,需要实时监控并实现可视化数据分析,从而有效提升生产交付能力,打造高效流畅的生产工序,是建设数字化智能工厂的重要内容之一。 数之能提供的工业数据分析平台将数据共享于工业制造流程的每一个环节,利用数据......
  • 数据库性能查看-查看MySQL数据库操作记录
    测试orm或者Django序列化器的时候,我需要知道他们都干了什么,这就需要打开MySQL的操作日志进入MySQL的客户端命令界面:showvariableslike'gen%';+------------------+---------------------------------+|Variable_name|Value|+----------......
  • abstract class 和 interface 有什么区别
    目录abstractclass和interface有什么区别1.抽象类1.1抽象类的格式1.2抽象类注意事项2.接口2.1接口的格式2.2接口可以多继承2.3接口的实现(implements)3.异同abstractclass和interface有什么区别1.抽象类抽象类:声明方法的存在而不实现的类,如果一个类中没有包含足够的......
  • 为什么MySQL不建议使用delete删除数据?
    MySQL并不直接建议禁止使用DELETE语句删除数据,但是在某些情况下,使用DELETE可能会带来一些潜在的问题,特别是在大型数据库中。下面我将详细介绍为什么在某些情况下MySQL不建议过度使用DELETE语句来删除数据,并探讨其可能带来的影响。1.DELETE操作的影响DELETE语句用于从表中删除......
  • 实例讲解数据库的定义重载函数
    本文分享自华为云社区《GaussDB数据库SQL系列-定义重载函数》,作者:Gauss松鼠会小助手2。一、前言在本文中,我们将介绍GaussDB数据库中的用户定义函数重载的概念、用法以及示例。用户定义函数是SQL中常用的“编程工具”,允许我们自定义函数来处理和操作数据。而函数重载则是指在......
  • mysql跨库事务XA
    XA的性能很低,但是没得选的时候,也是个方案<?PHP$dbtest1=newmysqli("127.0.0.1","public","public","dbtest1")ordie("dbtest1连接失败");$dbtest2=newmysqli("127.0.0.1public","public","dbtest2&qu......
  • 什么是xss攻击
    1.概念XSS攻击指的是跨站脚本攻击,是一种代码注入攻击。攻击者通过在网站注入恶意脚本,使之在用户的浏览器上运行,从而盗取用户的信息如cookie等。XSS的本质是因为网站没有对恶意代码进行过滤,与正常的代码混合在一起了,浏览器没有办法分辨哪些脚本是可信的,从而导致了恶意代码的执......
  • 实例讲解数据库的定义重载函数
    本文分享自华为云社区《GaussDB数据库SQL系列-定义重载函数》,作者:Gauss松鼠会小助手2。一、前言在本文中,我们将介绍GaussDB数据库中的用户定义函数重载的概念、用法以及示例。用户定义函数是SQL中常用的“编程工具”,允许我们自定义函数来处理和操作数据。而函数重载则是指在一个......
  • 如何用Java驱动万物互联,Java在物联网中能做什么?
    https://www.bilibili.com/video/BV1Kz4y1N7km/?spm_id_from=333.1007.tianma.2-3-6.click&vd_source=0d7b1712ce42c1a2fa54bb4e1d601d78      ......