内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

怎么理解oracle中的事務(wù)-創(chuàng)新互聯(lián)

本篇內(nèi)容主要講解“怎么理解oracle中的事務(wù)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“怎么理解oracle中的事務(wù)”吧!

目前累計(jì)服務(wù)客戶1000多家,積累了豐富的產(chǎn)品開發(fā)及服務(wù)經(jīng)驗(yàn)。以網(wǎng)站設(shè)計(jì)水平和技術(shù)實(shí)力,樹立企業(yè)形象,為客戶提供成都網(wǎng)站制作、網(wǎng)站建設(shè)、網(wǎng)站策劃、網(wǎng)頁設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷、VI設(shè)計(jì)、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。創(chuàng)新互聯(lián)始終以務(wù)實(shí)、誠(chéng)信為根本,不斷創(chuàng)新和提高建站品質(zhì),通過對(duì)領(lǐng)先技術(shù)的掌握、對(duì)創(chuàng)意設(shè)計(jì)的研究、對(duì)客戶形象的視覺傳遞、對(duì)應(yīng)用系統(tǒng)的結(jié)合,為客戶提供更好的一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進(jìn)步。

一組SQL語句操作要成為事務(wù),數(shù)據(jù)庫管理系統(tǒng)必須保證這組操作的原子性(Atomicity)、一致性(consistency)、隔離性(Isolation)和持久性(Durability),這就是ACDI特性。

原子性:是指事物中包含的所有操作要么全做,要么全不做,也就是說事物的所有活動(dòng)在數(shù)據(jù)庫中要么全部反映,要么全部不反映,一保證數(shù)據(jù)時(shí)一致的。

一致性:是指數(shù)據(jù)庫在事務(wù)操作前和操作處理,其中的數(shù)據(jù)必須都滿足業(yè)務(wù)規(guī)定的約束。

隔離性:是指數(shù)據(jù)庫允許多個(gè)并發(fā)事務(wù)同時(shí)對(duì)其中的數(shù)據(jù)進(jìn)行讀寫好修改的能力,隔離性可以防止事務(wù)的并發(fā)執(zhí)行時(shí),由于他們的操作命令交叉執(zhí)行而導(dǎo)致的數(shù)據(jù)不一致狀態(tài)。

持久性:是指當(dāng)事務(wù)結(jié)束后,它對(duì)數(shù)據(jù)庫中的影響是永久的,即便系統(tǒng)遇到故障的情況下,數(shù)據(jù)也不會(huì)丟失。

數(shù)據(jù)庫事務(wù)由以下的部分組成:

一個(gè)或多個(gè)DML 語句

一個(gè) DDL(Data Definition Language – 數(shù)據(jù)定義語言) 語句

一個(gè) DCL(Data Control Language – 數(shù)據(jù)控制語言) 語句

事務(wù)的執(zhí)行過程:

以第一個(gè) DML 語句的執(zhí)行作為開始

以下面的其中之一作為結(jié)束:

COMMIT 或 ROLLBACK 語句

DDL 或 DCL 語句(自動(dòng)提交)

用戶會(huì)話正常結(jié)束

系統(tǒng)異常終了

備注:使用COMMIT 和 ROLLBACK語句,我們可以: 確保數(shù)據(jù)完整性;數(shù)據(jù)改變被提交之前預(yù)覽;將邏輯上相關(guān)的操作分組。

事務(wù)控制語句

Set transaction:設(shè)置事務(wù)的屬性

Set constrains:設(shè)置當(dāng)前事務(wù)的約束模式,設(shè)置約束是修改數(shù)據(jù)的時(shí)候,立即起作用,還是當(dāng)前事務(wù)結(jié)束后應(yīng)用。

Savepoint :在事務(wù)中建立一個(gè)存儲(chǔ)點(diǎn),回滾時(shí),可以指定回滾到什么地方,然后重新執(zhí)行

Release savepoint:刪除一個(gè)存儲(chǔ)點(diǎn)

Rollback:回滾事務(wù)。級(jí)取消對(duì)數(shù)據(jù)庫所做的任何修改

Commit:提交事務(wù),把事務(wù)中對(duì)數(shù)據(jù)庫的修改進(jìn)行永久保存

數(shù)據(jù)異常

因?yàn)镺racle中支持多個(gè)事務(wù)并發(fā)執(zhí)行,所以會(huì)出現(xiàn)下面的數(shù)據(jù)異常。

錯(cuò)讀|臟讀:當(dāng)user1正在讀數(shù)據(jù)庫中的表A時(shí),user2正在修改表A,user2修改完了,user1又讀一遍表A,user1讀出的是修改過的數(shù)據(jù),而user2又撤消修改了,user1的讀取表A,稱為“錯(cuò)讀”或者“臟讀”

非重復(fù)讀|不重復(fù)讀:是指一個(gè)事務(wù)讀取數(shù)據(jù)庫中的數(shù)據(jù)后,另一個(gè)事務(wù)則更新了數(shù)據(jù),當(dāng)?shù)谝粋€(gè)事務(wù)再次讀取其中的數(shù)據(jù)時(shí),就會(huì)發(fā)現(xiàn)數(shù)據(jù)已經(jīng)發(fā)生了改變,這就是非重復(fù)讀取。非重復(fù)讀取所導(dǎo)致的結(jié)果就是一個(gè)事務(wù)前后兩次讀取的數(shù)據(jù)不相同。

假讀|幻讀:如果一個(gè)事務(wù)基于某個(gè)條件讀取數(shù)據(jù)后,另一個(gè)事務(wù)則更新了同一個(gè)表中的數(shù)據(jù),這時(shí)第一個(gè)事務(wù)再次讀取數(shù)據(jù)時(shí),根據(jù)搜索的條件返回了不同的行,這就是假讀。

事務(wù)中遇到的這些異常與事務(wù)的隔離性設(shè)置有關(guān),事務(wù)的隔離性設(shè)置越多,異常就出現(xiàn)的越少,但并發(fā)效果就越低,事務(wù)的隔離性設(shè)置越少,異常出現(xiàn)的越多,并發(fā)效果越高。

選擇隔離層

 針對(duì)3中讀取的數(shù)據(jù)時(shí)產(chǎn)生的不一致現(xiàn)象,在ANSI SQL標(biāo)準(zhǔn)92中定義了4個(gè)事務(wù)的隔離級(jí)別.如下圖所示:

隔離級(jí)別

錯(cuò)讀|臟讀

非重復(fù)讀|不重復(fù)讀

假讀|幻讀

Read uncommitted(非提交讀)

Read committed(提交讀)

Repeatable read(可重復(fù)讀)

Serializable(串行讀)

Oracle默認(rèn)的隔離級(jí)別是read committed

Oracle支持上述地址隔離層中的兩種read committed和Serializable除此之外oracle中還設(shè)置了read only和read write隔離層

Serializable:設(shè)置事務(wù)的隔離層為它時(shí),

Read only :事務(wù)中不能有任何修改數(shù)據(jù)庫中的數(shù)據(jù)的操作語句,如insert、update、delete、create語句,read only 是Serializable的子集,區(qū)別是read only只讀,Serializable和執(zhí)行DML語句。

Read write:是默認(rèn)設(shè)置,改選項(xiàng)表示在事務(wù)中可以有訪問語句。修改語句。但不經(jīng)常使用

設(shè)置事務(wù)的屬性

建立 set transaction的語句

如:

Set transaction read noly

或:

Set transaction read write

或:

Set transaction isolation level read commnitted

或:

Set transaction isolation level serializable

注意:這些語句是互斥的。不能同時(shí)設(shè)置兩個(gè)或兩個(gè)以上的選項(xiàng)

到此,相信大家對(duì)“怎么理解oracle中的事務(wù)”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

分享標(biāo)題:怎么理解oracle中的事務(wù)-創(chuàng)新互聯(lián)
分享地址:http://m.rwnh.cn/article6/djieog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、云服務(wù)器、自適應(yīng)網(wǎng)站、面包屑導(dǎo)航、軟件開發(fā)、電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
晋中市| 丘北县| 伽师县| 赤壁市| 囊谦县| 西乡县| 江北区| 西乡县| 孟州市| 揭西县| 辛集市| 定陶县| 彭泽县| 霍林郭勒市| 青龙| 盐池县| 黎平县| 奉贤区| 安图县| 县级市| 江川县| 抚远县| 边坝县| 奉贤区| 余姚市| 肇庆市| 平塘县| 高平市| 马鞍山市| 肇州县| 岳西县| 东明县| 都安| 商都县| 安阳县| 西藏| 漾濞| 区。| 丘北县| 遂宁市| 科技|