新聞中心
以下的文章主要向大家介紹的是實(shí)現(xiàn)SQL Server創(chuàng)建事務(wù)所要用到的Sql代碼,我也是SQL Server學(xué)習(xí)方面的新手,前兩天在無意間在一網(wǎng)站看見關(guān)于實(shí)現(xiàn)SQL Server創(chuàng)建事務(wù)所要用到的Sql代碼,覺得挺好拿出來和大家一起分享。

網(wǎng)站是企業(yè)的互聯(lián)網(wǎng)名片,是開展互聯(lián)網(wǎng)業(yè)務(wù)基礎(chǔ)平臺(tái)。在目標(biāo)明確的基礎(chǔ)上,創(chuàng)新互聯(lián)建站憑借團(tuán)隊(duì)豐富的設(shè)計(jì)經(jīng)驗(yàn)完成網(wǎng)站的構(gòu)思創(chuàng)意即總體設(shè)計(jì)方案,自成立以來,一直致力于為企業(yè)提供從國際域名空間、網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、品牌網(wǎng)站制作、電子商務(wù)、成都外貿(mào)網(wǎng)站制作、網(wǎng)站推廣、網(wǎng)站優(yōu)化到為企業(yè)提供個(gè)性化軟件開發(fā)等基于互聯(lián)網(wǎng)的全面整合營銷服務(wù)。
Sql代碼
- --借書的事務(wù)
- begin transaction
- declare @error int
- set @error = 0
- insert into borrows(rid,bid,borrowdate) values
- (5,10,2008-6-11)
- set @error = @error + @@error
- update books set bstate=1
- where bid=10
- set @error = @error + @@error
- if @error <> 0
- rollback transaction
- else
- commit transaction
- --借書的事務(wù)
- begin transaction
- declare @error int
- set @error = 0
- insert into borrows(rid,bid,borrowdate) values
- (5,10,2008-6-11)
- set @error = @error + @@error
- update books set bstate=1
- where bid=10
- set @error = @error + @@error
- if @error <> 0
- rollback transaction
- else
- commit transaction
事物三步曲:begin transaction,rollback transaction,commit transaction。在這里我們還看到了@error和@@error兩個(gè)變量,前者是我們定義的局部變量,后者是sql server定義好的int型全局變量。定義變量的方式為:declare @error int 。
而設(shè)置局部變量的方式為set @error = 0,還有一種方式為 select @error = 字段名稱 from 表。順便說一下,在sql server 種輸出方式也有兩種,一種是print,另一種是select 語句。前者打印的是文本,后者打印的是表格。
關(guān)于事務(wù),就的提到事務(wù)的隔離級(jí)別了,分別為:讀未提交,讀已提交,可重復(fù)讀和序列化。sql server默認(rèn)的隔離級(jí)別為讀已提交。不同的隔離級(jí)別產(chǎn)生的問題有:丟失修改(寫寫沖突),脹讀,不可重復(fù)讀和幻讀。讀未提交隔離級(jí)別會(huì)產(chǎn)生所有問題,而序列化不會(huì)產(chǎn)生任何問題。另外,幻讀和不可重復(fù)讀的概念也是不一樣的哦,一個(gè)是對(duì)象的集合,一個(gè)是對(duì)象的狀態(tài)。
新聞標(biāo)題:實(shí)現(xiàn)SQL Server創(chuàng)建事務(wù)要用到的代碼
文章起源:http://m.fisionsoft.com.cn/article/dhhcsee.html


咨詢
建站咨詢
