資料庫的事務及變數宣告方法

2021-07-08 14:28:09 字數 1241 閱讀 9713

事務:簡單來說事務就是為了保持資料一致性的一種手段,在事務中的sql語句作為乙個整體一起向系統提交,要麼都執行,要麼都不執行,可以回滾到原來的狀態.

事務的語法:

開始事務

begin tran(或者transaction)
提交事務:

commit tran
回滾事務

rollback tran
一般配合事務使用

@@

error

系統的變數,指的是返回錯誤資訊號.如沒有錯誤,則返回0,也可以配合try-catch使用.

案例:

begin tran

declare @sumerror int=0--定義乙個儲存錯誤新的變數

執行一條語句

set @sumerror=@sumerror+@@error

執行一條語句

set @sumerror=@sumerror+@@error

if(@sumerror

<>0)

begin

rollback tran--如果錯誤變數不為0,則回滾

enselse

begin

commit tran--如果錯誤變數為0,則提交事務

end

事務的特性

1. 原子性:事務必須是原子工作單元,對於其資料修改,要麼全部執行,要麼全部不執行.

2. 一致性:事務在完成時,必須使所有的資料都保持一致狀態,在相關資料庫中,所有規則都必須應用於事務的修改,來保持所有資料的完整性.事務結束時,所有的內部資料結構都必須是正確的.

3. 隔離:由併發事務所在的修改必須在任何其他併發事務所做的修改間隔.事務識別資料時,資料所處的狀態.事務不會識別中間狀態的資料.這稱之為可序列性,因為他能夠重新裝在原始資料.並且重播一系列事務,已使資料結束時的狀態與原始事務執行的狀態相同

4. 永續性:事務完成之後,他對於系統的影響是永久性的該修改即時出現系統故障也將一直保持.

變數宣告方法

declare @name

int =0

變數名稱,變數型別,變數值(可以不賦初始值)

對變數的賦值的兩種方法.

在變數宣告時直接賦值.

使用set語法進行賦值.

變數宣告和資料庫連線

解決問題 高階語言如何與資料庫連線和斷開連線 如何將宿主程式的變數傳遞給sql語句 1.變數的宣告和使用 1 嵌入式sql語句中變數的宣告 exec sql begin declare section char vsname 10 specname 10 張三 int vsage exec sql ...

資料庫事務及實現

一 事務 事務指的是滿足acid特性的一組操作,可以通過 commit提交乙個事務,也可以使用 rollback 進行回滾。mysql 預設採用自動提交模式。也就是說,如果不顯式使用start transaction語句來開始乙個事務,那麼每個查詢都會被當做乙個事務自動提交。acid 1.原子性 a...

Oracle資料庫(一) 變數宣告

目錄 變數宣告的基本語法 錨定宣告 自定義子型別 name constant datatype not null default default assignment 告訴pl sql按照已經定義好的資料結構來設定變數的資料型別。這些定義好的資料型別可能是 另乙個pl sql變數 乙個預定義的typ...