溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL事務有哪些主要的功能

發(fā)布時間:2020-05-29 17:45:05 來源:網(wǎng)絡 閱讀:402 作者:三月 欄目:MySQL數(shù)據(jù)庫

下文我給大家簡單講講關于MySQL事務有哪些主要的功能,大家之前了解過相關類似主題內(nèi)容嗎?感興趣的話就一起來看看這篇文章吧,相信看完MySQL事務有哪些主要的功能對大家多少有點幫助吧。

MySQL事務功能

1.事務簡述

一個事務是一個連續(xù)的一組數(shù)據(jù)庫操作,就好像它是一個單一的工作單元進行。換言之,永遠不會是完整的事務,除非該組內(nèi)的每個單獨的操作是成功的。如果在事務的任何操作失敗,則整個事務將失敗。

2.事務特性

  • 原子性:在事務的操縱中,要么都執(zhí)行、要么都不執(zhí)行
  • 一致性:事務中,保證數(shù)據(jù)從一個一致狀態(tài)變?yōu)榱硪灰恢聽顟B(tài)
  • 隔離性:每個事務互不干擾,一起執(zhí)行也可
  • 持久性:事務提交后,數(shù)據(jù)的影響是永久性的

3.事務使用

(1)自動提交
mysql> set autocommit=1;            //開啟事務自動提交,set autocommit=0禁止自動提交
(2)手動提交
mysql> begin;                   //事務開始聲明

mysql> SQL語句...;               //執(zhí)行的SQL語句

mysql> rollback;                //回滾事務

mysql> commit;                  //提交事務

注:回滾只能回滾當前事務提交之前操縱,所有當前事務提交成功的全部失效

(3)自動回滾的情況
  • begin后手動退出數(shù)據(jù)庫(如Ctrl+C、quit、exit)
  • 云服務器斷電
(4)例子:轉(zhuǎn)賬

1.給對方轉(zhuǎn)賬1000,帳號不對

2.輸入轉(zhuǎn)入金額

3.提交確認

begin;

create database hehe;

create table hehe.a(number int,user char(4),menony int(4));

insert into hehe.a values ('1','a','1000');

insert into hehe.a values ('2','b','10');

commit;         //正常提交

事務操作

begin;          //開始

update hehe.a set menony='0' where user='a';

rollback;           //回滾操作

begin;

update hehe.a set menony='0' where user='a';

update hehe.a set menony='1010' where user='b';

commit;         //提交

rollback;           //由于系統(tǒng)已經(jīng)提交,故不能撤銷,

大家覺得MySQL事務有哪些主要的功能這篇文章怎么樣,是否有所收獲。如果想要了解更多相關,可以繼續(xù)關注我們的行業(yè)資訊板塊。 

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI