六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

在ADO.NET中使用事務保護數據的完整性(3)

[摘要]事務在ADO.Net中Ado.net 支持兩種事務模型,這在.Net Framework 文檔中作為指南有定義.事務指南手冊介紹了通常應該知道的數據庫事務, 它影響操作單個目標數據庫.一個類通過由a...
事務在ADO.Net中

Ado.net 支持兩種事務模型,這在.Net Framework 文檔中作為指南有定義.事務指南手冊介紹了通常應該知道的數據庫事務, 它影響操作單個目標數據庫.一個類通過由ado.net顯示描述的事務邊界使用事務類和方法能提供事務指南.在接下來的章節中,我將把重點放在事務指南上.

自動事務也是可行的,為了使用類來參與事務來協調跨多個數據源的改變.在這種情景下事務本身是在外層處理的,比如通過com+ 和 DTC. 需要了解更多自動事務的,可以參照相關自動事務.

注:當沒有在你的代碼中指定事務行為時,你應該注意數據庫事務默認行為.比如,sql Server 默認自動模式,每個事務-Sql 語句或成功或失敗.要了解哪種默認行為是希望得到的從你工作的數據源中,能幫你決定你是否顯示定義事務,也可以對于你理解你的系統行為更有幫助.

事務相關類總攬

Ado.net 數據提供對象通過Connection, Command, 和Transaction 類來提供事務功能. 一個典型的事務過程類似以下:

1. 打開事務通過Connetion.BeginTransaction()

2. 通過設置Command 的Command.Transaction 屬性,在事務中加入語句或存儲過程.

3. 依靠提供者,選擇使用 Transaction.Save() 或 Transaction.Begin() 來創建savepoint 或內嵌的事務來使能局部回滾.

4. 提交或回滾事務通過使用Transaction.Commit() 或Transaction.Rollback()

所有的數據提供者提供了同樣的基本結構來處理事務,開始連接的事務,加入指令,使用事務物件來提交或回滾.

Sql Server 事務

Sql Server 數據提供對象提供事務的基本功能情況見以下的類和成員:

Class
Member
Function

SqlConnection
BeginTransaction
Open a new transaction.

SqlCommand
Transaction
Enlist the command associated with the object in an open transaction.

SqlTransaction
Save
Create a savepoint to enable a partial rollback.

SqlTransaction
Rollback
Roll back a transaction.

SqlTransaction
Commit
Commit a Transaction



Sql Server 數據提供者( 對于Sql Server 來說,OLE DB provider 也是如此) 不提供在代碼中創建內嵌事務的方式, 因此內嵌事務在Sql Server并不真正的被支持.因此這兒只有一種方式來開始一個事務在SqlClient中-使用SqlConnection.BeginTransaction(). 你不能在統一個連接中打開另外一個事務,直到先前的事務被提交或回滾,因此在任何時間每個連接只有一個打開的事務.為了使用局部回滾,使用SqlTransaction.Save().

OLE DB 事務

OLE DB 數據提供者提供事務的基本功能情況見以下的類和成員:

Class
Member
Function

OleDbConnection
BeginTransaction
Open a new transaction.

OleDbCommand
Transaction
Enlist the command associated with the object in an open transaction.

OleDbTransaction
Begin
Create a nested transaction, to enable a partial rollback.

OleDbTransaction
Rollback
Roll back a transaction.

OleDbTransaction
Commit
Commit a Transaction



OLE DB 數據提供者不提供任何的方法來設置savepoints, 相反的有個Begin() 方法在OleDbTransaction物件上.這允許你創建內嵌事務(根據你的數據庫)來提供類似的功能.在這種情況下你可以在單個連接中擁有多個事務.但必須記住的是顯示的調用提交和回滾.

記住,.NET OLE DB數據提供者的內嵌事務依賴于你的數據庫和指定的OLE DB提供者.為了成功實施內嵌事務,其必須被你的數據庫和OLE DB 提供者都支持.

Oracle 事務

Oracle 數據提供者提供事務的基本功能情況見以下的類和成員:

Class
Member
Function

OracleConnection
BeginTransaction
Open a new transaction.

OracleCommand
Transaction
Enlist the command associated with the object in an open transaction.

OracleTransaction
Rollback
Roll back a transaction.

OracleTransaction
Commit
Commit a Transaction



Oracle 數據提供者不允許你指定savepoints或內嵌事務.Savepoints 被Oracle 支持,但是你不能實施它們對于當前的oracle數據提供者版本來說.事務于oracle 來說或者回滾或者提交,局部回滾是不能的.






主站蜘蛛池模板: 夜夜快播 | 日本视频在线观看播放免费 | 亚洲福利三区 | 天天射天天操天天干 | 日韩欧美在线观看综合网另类 | 亚洲综合中文网 | 日韩亚洲第一页 | 羞羞影院男女午夜爽爽影视 | 五月婷丁香 | 深爱五月激情五月 | 日韩福利网| 欧美亚洲另类综合 | 日韩欧美高清在线 | 色狠狠色综合久久8狠狠色 色狠狠色综合吹潮 | 日本爱爱小视频 | 最近中文字幕无吗高清免费视频 | 日本国产在线视频 | 青青热久免费精品视频网站 | 人成精品| 最近最中文字幕视频 | 欧美又肥又胖的大bbwⅹ | 日本在线一本 | 三级在线视频 | 色噜噜狠狠成人网 | 色噜噜色偷偷男人的天堂 | 午夜影院免费在线观看 | 午夜久久网 | 婷婷深爱 | 中文字幕日韩三级 | 日本一区中文字幕 | 又粗又大又爽免费视频 | 欧美在线高清视频播放免费 | 日bb小说| 欧美一区色 | 日韩精品魔镜号系列在线观看 | 亚洲观看视频 | 亚洲国产99在线精品一区二区 | 中文字幕不卡高清免费 | 欧美一卡二卡3卡4卡无卡六卡七卡科普 | 亚洲综合色丁香婷婷六月图片 | 正在播放一区二区 |