如何使用 Transact SQL 執行事務處理

2021-04-12 14:21:30 字數 1094 閱讀 3110

以下儲存過程闡明了如何在 transact-sql 儲存過程內部執行事務性資金轉帳操作。

create procedure moneytransfer

@fromaccount char(20),

@toaccount char(20),

@amount money

asbegin transaction

-- perform debit operation

update accounts

set balance = balance - @amount

where accountnumber = @fromaccount

if @@rowcount = 0

begin

raiserror('invalid from account number', 11, 1)

goto abort

enddeclare @balance money

select @balance = balance from accounts

where accountnumber = @fromaccount

if @balance < 0

begin

raiserror('insufficient funds', 11, 1)

goto abort

end-- perform credit operation

update accounts

set balance = balance + @amount

where accountnumber = @toaccount

if @@rowcount = 0

begin

raiserror('invalid to account number', 11, 1)

goto abort

endcommit transaction

return 0

abort:

rollback transaction

go該儲存過程使用 begin transaction、commit transaction 和 rollback transaction 語句來手動控制該事務。 

Transact SQL 語言概述

transact sql 語言中標準的sql 語句暢通無阻.transact sql 也有類似於sql 語言的分類,不過做了許多擴充.transact sql 語言的分類如下 珨 br 用來說明變數的命令.耨ddl,data definition language 用來建立資料庫 資料庫物件和定義其...

使用 Transact SQL檢視伺服器的排序規則

select convert varchar,serverproperty collation execute sp helpsort select name,description from sys.fn helpcollations sql server 2017 檢視資料庫的排序規則設定 se...

建立 Transact SQL 作業步驟

在物件資源管理器中,連線到 sql server 資料庫引擎例項,再展開該例項。展開 sql server 建立乙個新作業或右鍵單擊乙個現有作業,再單擊 屬性 有關建立作業的詳細資訊,請參閱建立作業。在 作業屬性 對話方塊中,單擊 步驟 頁,再單擊 新建 在 新建作業步驟 對話方塊中,鍵入作業的 步...