新聞中心
ADO.NET事務(wù)提供兩個(gè)對(duì)象用于檢索關(guān)系型數(shù)據(jù)并把它存儲(chǔ)在內(nèi)存中,分別是DataSet和DataReader。DataSet提供內(nèi)存中關(guān)系數(shù)據(jù)的表現(xiàn)--包括表和次序、約束等表間的關(guān)系的完整數(shù)據(jù)集合。DataReader提供快速、只向前、只讀的來(lái)自數(shù)據(jù)庫(kù)的數(shù)據(jù)流。

成都創(chuàng)新互聯(lián)技術(shù)團(tuán)隊(duì)十多年來(lái)致力于為客戶提供網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、品牌網(wǎng)站制作、營(yíng)銷型網(wǎng)站、搜索引擎SEO優(yōu)化等服務(wù)。經(jīng)過(guò)多年發(fā)展,公司擁有經(jīng)驗(yàn)豐富的技術(shù)團(tuán)隊(duì),先后服務(wù)、推廣了上1000+網(wǎng)站,包括各類中小企業(yè)、企事單位、高校等機(jī)構(gòu)單位。
例如在一個(gè)銷售系統(tǒng)里,通過(guò)帳單處理模塊完成對(duì)銷售表的數(shù)據(jù)處理,客戶端銷售人員已經(jīng)將庫(kù)存貨品銷售出去,但與銷售表有關(guān)的庫(kù)存表尚未及時(shí)更新,結(jié)果娶她銷售人員再讀取庫(kù)存數(shù)據(jù)就會(huì)出現(xiàn)數(shù)據(jù)不一致的現(xiàn)象。
為此,在數(shù)據(jù)庫(kù)基礎(chǔ)理論中我們引入事務(wù)的概念。所謂事務(wù)就是這樣的一系列操作,這些操作被視為一個(gè)操作序列,要么全做,要么全部做,是一個(gè)不可分割的程序單元。在數(shù)據(jù)庫(kù)數(shù)據(jù)處理中經(jīng)常會(huì)發(fā)生數(shù)據(jù)更新事件,為了保證數(shù)據(jù)操作的安全與一致,大型數(shù)據(jù)庫(kù)服務(wù)器都支持事務(wù)處理,以保證數(shù)據(jù)更新在可控的范圍內(nèi)執(zhí)行 。ADO.NET通過(guò)Connection對(duì)象的BeginTransaction()要領(lǐng)實(shí)現(xiàn)對(duì)事務(wù)處理的支持,該要領(lǐng)返回一個(gè)實(shí)現(xiàn)IDbTransaction接口的對(duì)象,而該對(duì)象是在System.Data中被定義的。 #t#
1.ADO.NET事務(wù)處理命令
調(diào)用Connection對(duì)象的BeginTransaction()要領(lǐng),返回的是一個(gè)DbTransaction對(duì)象。DbTransaction對(duì)象常用的事務(wù)處理命令包括下面三個(gè):
◆nBegin:在執(zhí)行事務(wù)處理中的任何操作之前,必須運(yùn)用 Begin命令來(lái)開(kāi)始事務(wù)處理;
◆nCommit:在成功將所有修改都存儲(chǔ)于數(shù)據(jù)庫(kù)時(shí),才算是提交了事務(wù)處理;
◆nRollback:由于在事務(wù)處理期間某個(gè)操作失敗,而取消事務(wù)處理已做的所有修改,這時(shí)將發(fā)生回滾;
不同命名空間里的DbTransaction類名稱是不同,表示也不同。參見(jiàn)表: 類 說(shuō)明 OdbcTransaction 表示對(duì)Odbc數(shù)據(jù)源執(zhí)行 的SQL 事務(wù)處理。 ADO.NET事務(wù) 表示對(duì)OleDb數(shù)據(jù)源執(zhí)行 的SQL事務(wù)處理。 OracleTransaction 表示對(duì)Oracle數(shù)據(jù)庫(kù)執(zhí)行 的事務(wù)處理。
SqlTransaction 表示要對(duì)SQL Server數(shù)據(jù)庫(kù)執(zhí)行 的Transact-SQL事務(wù)處理。 表 DbTransaction類在不同命名空間里的表 在后面的內(nèi)容中,我們主要討論SqlTransaction對(duì)象。
2.SqlTransaction對(duì)象的運(yùn)用 。
SqlTransaction對(duì)象表示要對(duì)數(shù)據(jù)源執(zhí)行 的事務(wù)處理,其常用的屬性有Connection。ADO.NET事務(wù)是用來(lái)獲取與該事務(wù)關(guān)聯(lián)的SqlConnection對(duì)象,或者如果該事務(wù)不再有效,則為空引用。SqlTransaction對(duì)象常用的要領(lǐng)有Save()、Commit()和Rollback(),其中Save()要領(lǐng)在事務(wù)中建立保存點(diǎn)(它可用于回滾事務(wù)的一部分),并指定保存點(diǎn)名稱;Commit()要領(lǐng)用來(lái)提交數(shù)據(jù)庫(kù)事務(wù),Rollback()要領(lǐng)從掛起狀態(tài)回滾事務(wù)。
分享題目:介紹ADO.NET事務(wù)問(wèn)題處理命令方法
分享地址:http://fisionsoft.com.cn/article/cosjihs.html


咨詢
建站咨詢
