成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL Server數(shù)據(jù)庫利用SQL語句使用事務(wù)詳解

數(shù)據(jù)庫 SQL Server
本文我們通過具體的代碼示例來介紹了SQL Server數(shù)據(jù)庫對事務(wù)的使用,希望能夠?qū)δ兴鶐椭?/div>

SQL Server數(shù)據(jù)庫中對事務(wù)的使用是本文我們要介紹的內(nèi)容,我們首先創(chuàng)建數(shù)據(jù)庫和表,然后再介紹利用SQL語句來使用事務(wù)的操作,接下來就讓我們一起來了解一下這部分內(nèi)容吧。

--建庫

  1. IF EXISTS (SELECT name FROM sys.databases WHERE name = N'TransTestDb')   
  2. drop database [TransTestDb]   
  3. CREATE DATABASE [TransTestDb];  

--建表

  1. use [TransTestDb]   
  2. go   
  3. IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TransTestTable]') AND type in (N'U'))   
  4. drop table [TransTestTable]   
  5.  
  6. CREATE TABLE [dbo].[TransTestTable](Id int, [Name] varchar(16));  

--初始值

  1. use [TransTestDb]   
  2. go   
  3. insert into [TransTestTable]   
  4. select 1,'a' union   
  5. select 2,'b' union   
  6. select 3,'c';  

 

--建庫

  1. IF EXISTS (SELECT name FROM sys.databases WHERE name = N'TransTestDb')  
  2. drop database [TransTestDb] CREATE DATABASE [TransTestDb];  

 

--建表

  1. use [TransTestDb] go IF EXISTS (SELECT * FROM sys.objects   
  2. WHERE object_id = OBJECT_ID(N'[dbo].[TransTestTable]') AND type in (N'U'))   
  3. drop table [TransTestTable]   
  4. CREATE TABLE [dbo].[TransTestTable](Id int, [Name] varchar(16));  

 

--初始值

 

  1. use [TransTestDb] go insert into [TransTestTable]   
  2. select 1,'a' union select 2,'b' union select 3,'c'; 

 

-- 首先介紹利用SQL語句來使用事務(wù)。Sql Server2005/2008提供了begin tran,commit tran和rollback tran三個語句來顯示的使用事務(wù)。begin tran表示事務(wù)開始,commit tran表示事務(wù)提交,rollback tran表示事務(wù)回滾。具體代碼如下:

 

  1. begin try   
  2. begin tran   
  3. insert into dbo.TransTestTable values (66,'66');   
  4. update dbo.TransTestTable set [Name] = '88' where [Id] = 66;   
  5. -- RAISERROR ('Error raised in TRY block.',16,1);   
  6. commit tran   
  7. end try   
  8. begin catch   
  9. rollback tran   
  10. end catch 

 

代碼中的begin try和begin catch是捕獲異常時使用的,只在sql server2005/2008中支持,sql server 2000上不支持這個語句。在begin try 和 end try之間的代碼運(yùn)行時如果發(fā)生異常,則程序會跳轉(zhuǎn)到begin catch和end catch中執(zhí)行相關(guān)的rollback tran回滾操作。在begin tran和commit tran之間就是一個事務(wù),insert和update必須同時成功,否則就同時失敗。RAISERROR 語句的意思是拋出一個異常,只在sql server2005/2008中支持,sql server 2000上不支持這個語句。

執(zhí)行上面的代碼,我們會發(fā)現(xiàn),插入和更新同時都成功了。把RAISERROR的注釋去掉后,再執(zhí)行,我們會發(fā)現(xiàn),插入和更新都回滾了。因?yàn)镽AISERROR拋出異常后,沒有執(zhí)行到commit tran,而是直接執(zhí)行begin catch里面的rollback tran回滾語句了。這里可以看到事務(wù)的原子性原則和一致性原則,同時更改同時插入。

以上就是SQL Server數(shù)據(jù)庫中使用事務(wù)的過程,本文就介紹到這里了,希望本次的介紹能夠?qū)δ兴鶐椭?/p>

【編輯推薦】

  1. 關(guān)閉SQL Server 2005遠(yuǎn)程連接以及其它對外服務(wù)
  2. SQL Server數(shù)據(jù)庫ROW_NUMBER()函數(shù)使用詳解
  3. SQL Server將視圖或表的記錄不重復(fù)地插入到另一個表
  4. SQL Server 2005附加數(shù)據(jù)庫時Read-Only錯誤的解決方案
  5. SQL Server中CROSS APPLY和OUTER APPLY的應(yīng)用詳解

 

責(zé)任編輯:趙鵬 來源: 博客園
相關(guān)推薦

2011-08-11 09:12:31

SQL Server nolock

2010-06-28 10:36:42

SQL Server數(shù)

2010-09-06 09:53:41

SQL Server語句

2021-03-18 08:20:19

SQLServer數(shù)據(jù)庫SQL

2011-08-22 11:39:53

SQL Server數(shù)PIVOT

2010-07-15 15:37:13

SQL Server數(shù)

2010-09-06 09:36:51

SQL語句

2011-09-01 19:00:08

SQL ServerDBCC語句

2011-08-24 12:49:56

SQL Server托管代碼

2010-07-15 17:28:50

SQL Server

2011-03-31 09:30:27

SQL Server數(shù)管理SQL

2010-09-07 15:20:58

SQL語句事務(wù)

2011-08-15 13:48:47

SQL ServerROW_NUMBER(

2010-09-06 11:05:05

SQL SERVER語句

2011-08-01 22:41:49

SQL Server數(shù)Insert

2011-08-22 13:28:56

FOR XMLSQL Server

2011-08-15 11:24:46

SQL Server事務(wù)

2011-08-25 13:41:50

SQL Server 變更跟蹤

2010-07-13 10:43:26

SQL Server數(shù)

2010-09-25 15:37:38

SQL語句
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 日日夜夜精品视频 | 天天射夜夜操 | 在线国产精品一区 | 精品国产一级 | 国产精品久久99 | 红桃视频一区二区三区免费 | 男人的天堂久久 | 一本一道久久a久久精品蜜桃 | 伊人亚洲| 久久久视频在线 | 97久久精品午夜一区二区 | 九九视频在线观看 | 欧洲精品久久久久毛片完整版 | 国产欧美一区二区久久性色99 | 国内精品久久久久 | 午夜欧美| hitomi一区二区三区精品 | 久久久久久久国产 | 99亚洲综合| 婷婷久久综合 | 欧美一区二区在线免费观看 | av成年人网站 | 久久91av| 精品久草 | 久久国产精品亚洲 | 国产毛片av | 久久久久久久一区二区三区 | 日韩www | 涩涩鲁亚洲精品一区二区 | 色婷婷综合久久久中字幕精品久久 | 国产一区二区在线免费 | 国产精品日韩一区二区 | 久久久久久久久99 | 中文字幕一区二区在线观看 | 黄a免费网络 | 久久久久久久综合 | 野狼在线社区2017入口 | 亚洲精品在线国产 | 国产aaaaav久久久一区二区 | 国产免费高清 | 全免费a级毛片免费看视频免 |