1. 程式人生 > >SQL Server資料庫開發(5.事務和遊標)

SQL Server資料庫開發(5.事務和遊標)

一、事務

1.1事務:是有若干個T-SQL指令組成,並且所有的指令作為一個整體提交給資料庫系統,執行時,這這組指令要麼全部完成,要麼全部撤銷。因此,事務是一個不可分割的邏輯單元。

事務必須具有四個屬性:原子性、一致性、隔離性、永續性(也稱為事務的額ACID屬性)

1.2事務的模式(三類)

  1.2.1顯示事務:是使用者使用T-SQL明確定義開始(begin  transaction(tran))和結束(commit  transaction(tran)或rollback  transaction(tran))的事務。

  1.2.2自動提交事務

  1.2.3隱式事務

1.3事務處理

  --事務的基本結構
        --1、開啟事務
        --2、定義變數,用於儲存錯誤編號
        --3、對每一條sql語句進行錯誤捕捉
        --4、對錯誤編號進行處理
        --    4.1成功,提交事務
        --    4.2失敗,回滾事務

 

二、遊標

2.1遊標:遊標實際上是一種能從包括多條資料記錄的結果集中每次提取一條記錄的機制。

2.2使用遊標可以實現的目標:

  2.2.1允許定位到結果集中的特定行

  2.2.2從結果集的當前位置檢索一行或多行資料

  2.2.3支援對結果集中當前位置的行進行修改

2.3 SQL server支援的圖示

2.4 語法結構
  --DECLARE  cursor_name      --遊標名
  --CURSOR [LOCAL | GLOBAL]     --全域性或區域性的
  --[FORWARD ONLY | SCROLL]     --遊標滾動方式
  --[READ_ONLY | SCROLL_LOCKS | OPTIMISTIC] --遊標讀取方式
  --FOR SELECT_statements      --查詢語句
  --[FOR UPDATE [OF Column_name[,….N]]]  --可更改欄位

2.5、遊標的基本操作之檢索

2.6、使用遊標

列1:

列2: