日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
概括VB.NET使用OracleTransaction

經(jīng)過長時間學(xué)習(xí)VB.NET使用OracleTransaction,于是和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。數(shù)據(jù)庫事務(wù)是由一組SQL語句組成的一個邏輯工作單元。您可以把事務(wù)看作是一組不可分的SQL語句,這些語句作為一個整體***記錄在數(shù)據(jù)庫中或一并撤銷。比如在銀行帳戶之間轉(zhuǎn)移資金:一條UPDATE語句將從一個帳戶的資金總數(shù)中減去一部分,另一條UPDATE語句將把資金加到另一個帳戶中。減操作和加操作必須***記錄在數(shù)據(jù)庫中,或者必須一并撤銷—否則將損失資金。這個簡單的示例僅使用了兩條UPDATE語句,但一個更實際的事務(wù)可能包含許多INSERT、UPDATE和DELETE語句。

十多年的峨邊彝族網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。成都全網(wǎng)營銷的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整峨邊彝族建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“峨邊彝族網(wǎng)站設(shè)計”,“峨邊彝族網(wǎng)站推廣”以來,每個客戶項目都認(rèn)真落實執(zhí)行。

要***記錄一個事務(wù)中的SQL語句的結(jié)果,您可以通過COMMIT語句來執(zhí)行提交。要撤銷SQL語句的結(jié)果,您可以使用ROLLBACK語句來執(zhí)行回滾,這會把所有的行重設(shè)為它們原來的狀態(tài)。只要您事先沒有與數(shù)據(jù)庫斷開,則您在執(zhí)行回滾之前所做的任何修改都將被撤銷。您還可以設(shè)置一個保存點(diǎn),以便將事務(wù)回滾至該特定的點(diǎn),同時保持事務(wù)中的其他語句原封不動。

使用數(shù)據(jù)庫事務(wù)(主要針對VB.NET)

您可以VB.NET使用OracleTransaction類的一個對象來表示一個事務(wù)。OracleTransaction類包含多個屬性,其中的兩個為Connection(指定與事務(wù)關(guān)聯(lián)的數(shù)據(jù)庫連接)和IsolationLevel(指定事務(wù)隔離級別)

Connection,指定與該事務(wù)關(guān)聯(lián)的OracleConnection對象;
IsolationLevel,指定該事務(wù)的IsolationLevel;
枚舉類型,用于對事物的鎖定,取值有Chaos、ReadCommited、ReadUncommited、RepeatableRead、Serializable、Unspecified。

應(yīng)用程序通過針對OracleConnection對象調(diào)用BeginTransaction來創(chuàng)建OracleTransaction對象。對OracleTransaction對象執(zhí)行與該事務(wù)關(guān)聯(lián)的所有后續(xù)操作(例如提交或中止該事務(wù))。
Commit:提交SQL數(shù)據(jù)庫事務(wù);
Rollback:從掛起狀態(tài)回滾事務(wù);
您還可以使用Save()在事務(wù)中設(shè)置一個保存點(diǎn)。

下面的示例創(chuàng)建一個OracleConnection和一個OracleTransaction。它還演示了如何使用BeginTransaction、Commit和Rollback方法。(這是MSDN里的范例)需要注意的是,這些操作需要引入命名空間:Oracle.DataAcess.ClientOracle.DataAccess.Client命名空間是ODP.NET的一部分,它包含許多類,其中有OracleConnection、OracleCommand和OracleTransaction。示例程序就用到了這些類。

事務(wù)操作

 
 
 
  1. Public Sub RunOracleTransaction()Sub RunOracleTransaction(myConnString As String)
  2. Dim myConnection As New OracleConnection(myConnString)
  3. myConnection.Open()
  4. Dim myCommand As OracleCommand = myConnection.CreateCommand()
  5. Dim myTrans As OracleTransaction
  6. 'Start a local transaction
  7. myTrans = myConnection.BeginTransaction(IsolationLevel.ReadCommitted)
  8. 'Assign transaction object for a pending local transaction
  9. myCommand.Transaction = myTrans
  10. Try
  11. myCommand.CommandText = "INSERT INTO Dept (DeptNo, Dname, Loc) values (50, 'TECHNOLOGY', 'DENVER')"
  12. myCommand.ExecuteNonQuery()
  13. myCommand.CommandText = "INSERT INTO Dept (DeptNo, Dname, Loc) values (60, 'ENGINEERING', 'KANSAS CITY')"
  14. myCommand.ExecuteNonQuery()
  15. myTrans.Commit()
  16. Console.WriteLine("Both records are written to database.")
  17. Catch e As Exception
  18. myTrans.Rollback()
  19. Console.WriteLine(e.ToString())
  20. Console.WriteLine("Neither record was written to database.")
  21. Finally
  22. myConnection.Close()
  23. End Try
  24. End Sub

在 .NET 程序中設(shè)置事務(wù)保存點(diǎn)

正如本文前面所提到的那樣,您可以設(shè)置一個保存點(diǎn),以便將事務(wù)回滾至該特定的點(diǎn),同時保持事務(wù)中的其他語句原封不動。您可以使用 OracleTransaction 類的 Save() 方法在事務(wù)中設(shè)置保存點(diǎn)。

如果您有一個非常長的事務(wù)并且希望能夠僅回滾到某個特定的時間點(diǎn),那么您可能要使用保存點(diǎn)。例如,您可能想對 10 個產(chǎn)品做一些更改,然后設(shè)置一個保存點(diǎn),然后再對另 10 個產(chǎn)品做更改;如果您在進(jìn)行第二批更改時出現(xiàn)了錯誤,那么您可以回滾至保存點(diǎn),使您的***批更改原封不動。

VB.NET使用OracleTransaction對象需要注意的幾點(diǎn):

1)你需要在你整個事務(wù)執(zhí)行中只能有***OracleConnection ,OracleCommand,OracleTransaction,也就是說如果你事務(wù)處理過程中如果需要與數(shù)據(jù)庫的操作都只能在這***的Command中執(zhí)行,類似于:

 
 
 
  1. imgCommand.CommandText = sSQL
  2. imgCommand.ExecuteNonQuery()或其他操作

若你新建一個連接執(zhí)行其他數(shù)據(jù)庫操作的話,整個事務(wù)過程就會拋出異常

2)如果你需要在你SQL語句中加入?yún)?shù),則你必須在你執(zhí)行完提交或相關(guān)數(shù)據(jù)庫操作之后將其Command的參數(shù)清空。


文章題目:概括VB.NET使用OracleTransaction
標(biāo)題URL:http://www.5511xx.com/article/dhijoge.html