在SQL SERVER中實現事務的部分回滾
在SQL SERVER中實現事務的部分回滾
1.儲存點:是一種實現部分回滾的方法。可以給一個儲存點起一個名字,以便在後面的事務中可以回滾到儲存點。
2.實現程式碼。
BEGIN TRANSACTION Transaction_Name
SQL_Statement1
SQL_Statement2
SQL_Statement1
SQL_Statement2
SAVE TRANSACTION Save_Name --設定儲存點
SQL_Statement3
SQL_Statement4
SQL_Statement4
IF Test_Condition_Fails
ROLLBACK TRANSACTION Save_Name --回滾到儲存點
SQL_Statement5
SQL_Statement6
SQL_Statement6
COMMIT TRANSACTION Transaction_Name
或
BEGIN TRANSACTION Transaction_Name
SQL_Statement1
SQL_Statement2
SAVE TRANSACTION Save_Name --設定儲存點
SQL_Statement3
SQL_Statement4
IF Test_Condition_Fails)
BEGIN
ROLLBACK TRANSACTION Save_Name --回滾到儲存點
RETURN
END
ELSE
BEGIN
SQL_Statement5
SQL_Statement6
END
COMMIT TRANSACTION Transaction_Name
SQL_Statement1
SQL_Statement2
SAVE TRANSACTION Save_Name --設定儲存點
SQL_Statement3
SQL_Statement4
IF Test_Condition_Fails)
BEGIN
ROLLBACK TRANSACTION Save_Name --回滾到儲存點
RETURN
END
ELSE
BEGIN
SQL_Statement5
SQL_Statement6
END
COMMIT TRANSACTION Transaction_Name
3.如果沒有儲存點時,ROLLBACK命令後面只能跟最外層事務的名字,而不能跟其他事務的名字。不論ROLLBACK命令在巢狀那一層發生時,如果其後沒有事務名,則將事務回滾整個事務到頂層,這和回滾最外層事務是一樣的。在巢狀事務中,不能僅回滾某一層事務,除非你指定了一個儲存點,然後回滾到儲存點。
相關文章
- MySQL實現事務的提交和回滾MySql
- T-SQL——關於事務回滾的方式SQL
- sql server中巢狀事務*SQLServer巢狀
- Spring Data JPA中事務回滾意外RollbackExceptionSpringException
- SQL Server中存在真正的“事務巢狀”SQLServer巢狀
- sqlserver遇到回滾事務的操作策略SQLServer
- 不能回滾的Redis事務還能用嗎Redis
- Postgresqlddl在事務中可以回滾,truncate時relfilenode在當前會話會改變SQL會話
- 關於事務回滾註解@Transactional
- Spring事務不能回滾的深層次原因Spring
- MySql事務無法回滾的原因有哪些MySql
- 關於ORACLE大型事務回滾的幾個點Oracle
- 客戶端登陸logout操作,事務回滾客戶端Go
- 在SQL Server上測試事務日誌的自動增長(三)QOSQLServer
- 在SQL Server上測試事務日誌的自動增長(二)TGSQLServer
- 在SQL Server上測試事務日誌的自動增長(一)JPSQLServer
- openGauss 子事務併發回滾流程最佳化
- 瞭解SQL Server觸發器及觸發器中的事務AWSQLServer觸發器
- 利用oracle的日誌挖掘實現回滾Oracle
- 如何在SQL Server中實現 Limit m,n 的功能SQLServerMIT
- 解耦事務:在抖動的SQL伺服器上實現低尾延遲線上事務 (CIDR 2022)解耦SQL伺服器
- 命令(XA ROLLBACK) 讓儲存叢集回滾GT 的事務分支
- spring事務增強,事務回滾如何判斷?希望在前端上有個提示Spring前端
- SQL Server 通過REVERSE實現C#中lastIndexOf的效果SQLServerC#ASTIndex
- Oracle vs PostgreSQL,研發注意事項(3)- 事務回滾之UPDATE操作解析OracleSQL
- SQL Server中事務日誌自動增長對效能的影響(下)PGSQLServer
- SQL Server中事務日誌自動增長對效能的影響(上)OSSQLServer
- 說說在 Spring 中,如何程式設計實現事務管理Spring程式設計
- 如何在Redis中實現事務Redis
- 為什麼catch了異常,但事務還是回滾了?
- 日常Bug排查-應用Commit報錯事務並沒有回滾MIT
- SQL事務SQL
- SQL Server 2012中新的T-SQL命令第二部分RMSQLServer
- MS SQL Server資料庫事務鎖機制分析(轉)SQLServer資料庫
- EXCEL資料上傳到SQL SERVER中的簡單實現方法ExcelSQLServer
- SQL Server 2012中新的T-SQL命令第一部分HWSQLServer
- Spring事務專題(四)Spring中事務的使用、抽象機制及模擬Spring事務實現Spring抽象
- SQL Server 表的管理_關於事務操作的詳解(案例程式碼)SQLServer
- Lua 指令碼在 Redis 事務中的應用實踐指令碼Redis