久久机这里只有精品,国产69精品一区二区亚洲孕妇,91精品国产综合久久婷婷香蕉,午夜久久久久久电影

最新活動:電腦PC端+手機端+微網(wǎng)站+自適應網(wǎng)頁多模板選擇-建站388元起價!!!
當前位置:主頁 > 網(wǎng)站建設 > SQL Transcation的一些總結(jié)分享建站知識

SQL Transcation的一些總結(jié)分享建站知識

時間:2023-05-24 00:05:24 閱讀: 文章分類: 網(wǎng)站建設 作者: 網(wǎng)站技術(shù)員

導讀:1建站知識相信大家對于SQL Transcation再熟悉不過,它確保了數(shù)據(jù)庫的數(shù)據(jù)一致性和安全性,尤其在對數(shù)據(jù)執(zhí)行增刪時,如果發(fā)生建設網(wǎng)站公司seo網(wǎng)站優(yōu)化培訓。

建設網(wǎng)站公司seo網(wǎng)站優(yōu)化培訓1.1.1 摘要 相信大家對于SQL Transcation再熟悉不過,它確保了數(shù)據(jù)庫的數(shù)據(jù)一致性和安全性,尤其在對數(shù)據(jù)執(zhí)行增刪時,如果發(fā)生異常和錯誤它就會觸發(fā)事務回滾,從而確保了我們數(shù)據(jù)的一致性和安全性,下面我們將通過分四部分介紹事件(Transcation)。 1.1.2 正文 首先讓我們通過一個具體的例子介紹Transcation的使用,假如我們的數(shù)據(jù)庫中有一個表UserInfo,它包含三個字段分別為:UserID(自增)、UserName (nvarchar)和LuckyNumber (tinyint),如下圖所示:

圖2執(zhí)行存儲過程的消息 通過上圖我們知道在執(zhí)行存儲過程中發(fā)生了異常,而且是由于值“20111111”數(shù)據(jù)超出了tinyint的范圍產(chǎn)生的,現(xiàn)在讓我們看一下數(shù)據(jù)插入的情況。

圖4 UserInfo表中數(shù)據(jù) 我們發(fā)現(xiàn)結(jié)果和沒有添加Transcation處理一樣,數(shù)據(jù)依然插入到表中。這究竟是什么原因呢?也許細心的你已經(jīng)發(fā)現(xiàn)了,我們沒有添加事務回滾——ROLLBACK。 但我們究竟要在哪里添加事務回滾(ROLLBACK)呢?或更具體地說:“究竟企業(yè)網(wǎng)站建設什么時候我們要觸發(fā)事務回滾(ROLLBACK)呢”? 由于我們數(shù)據(jù)插入失敗是因為插入過程發(fā)生了異常情況,那么我們就要捕獲異常和處理異常,那就是TRY/CATCH的設計了,好讓我們繼續(xù)完善我們的存儲過程吧。

復制代碼 代碼如下:

-- ============================================= -- Author: JKhuang -- Create date: 12/8/2011 -- Description: Inserts data -- ============================================= Alter PROCEDURE SPAddDataToUserInfo AS BEGIN BEGIN TRY BEGIN TRANSACTION -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- Hard code inserted data. INSERT INTO UserInfo VALUES('JKhuang', 8); INSERT INTO UserInfo VALUES('Jackson', 20111111); INSERT INTO UserInfo VALUES('JKRush', 23); COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH END GO

現(xiàn)在我們給存儲過程添加了異常處理機制TRY/CATCH(注意:SQLSERVER 2005或之后的版本才支持TRY/CATCH),接下來讓我們再執(zhí)行一次存儲過程。

圖6 執(zhí)行存儲過程消息

-- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. --SET NOCOUNT ON; -- Hard code inserted data. INSERT INTO UserInfo VALUES('JKhuang', 8); INSERT INTO UserInfo VALUES('Jackson', 20111111); INSERT INTO UserInfo VALUES('JKRush', 23); COMMIT TRANSACTION END TRY BEGIN CATCH PRINT 'Error in [SPAddDataToUserInfo]: ' + ERROR_MESSAGE(); ROLLBACK TRANSACTION PRINT ERROR_MESSAGE(); PRINT 'Rolled back successful Transactions: ' + Convert(varchar, @@TRANCOUNT); END CATCH END GO -- ============================================= -- Author: JKhuang -- Create date: 12/8/2011 -- Description: Invokes store procedure to insert data. -- ========================================網(wǎng)seo優(yōu)化趨勢===== ALTER PROCEDURE SPMultiDataToUserInfo AS BEGIN BEGIN TRY BEGIN TRANSACTION PRINT 'In [SPMultiDataToUserInfo] Transactions: ' + Convert(varchar, @@TRANCOUNT); -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. --SET NOCOUNT ON; -- Hard code inserted data. INSERT INTO UserInfo VALUES('Cris', 1); EXEC SPAddDataToUserInfo INSERT INTO UserInfo VALUES('Ada', 32); COMMIT TRANSACTION END TRY BEGIN CATCH PRINT 'Error in [SPMultiDataToUserInfo]: ' + ERROR_MESSAGE(); ROLLBACK TRANSACTION PRINT ERROR_MESSAGE(); PRINT 'Rolled back successful Transactions: ' + Convert(varchar, @@TRANCOUNT); END CATCH END GO

關(guān)鍵詞標簽: 標題 標簽 SQL

聲明: 本文由我的SEOUC技術(shù)文章主頁發(fā)布于:2023-05-24 ,文章SQL Transcation的一些總結(jié)分享建站知識主要講述標簽,標題,SQL網(wǎng)站建設源碼以及服務器配置搭建相關(guān)技術(shù)文章。轉(zhuǎn)載請保留鏈接: http://www.bifwcx.com/article/web_6241.html

我的IDC 網(wǎng)站建設技術(shù)SEOUC.COM
專注網(wǎng)站建設,SEO優(yōu)化,小程序設計制作搭建開發(fā)定制網(wǎng)站等,數(shù)千家網(wǎng)站定制開發(fā)案例,網(wǎng)站推廣技術(shù)服務。
  • 5000+合作客服
  • 8年從業(yè)經(jīng)驗
  • 150+覆蓋行業(yè)
  • 最新熱門源碼技術(shù)文章

    主站蜘蛛池模板: 广饶县| 荥阳市| 泰宁县| 庄河市| 日喀则市| 东光县| 福海县| 昌乐县| 静安区| 通海县| 修水县| 大城县| 漳浦县| 汉阴县| 文登市| 云龙县| 阿尔山市| 大荔县| 读书| 姜堰市| 荔浦县| 类乌齐县| 板桥市| 宣化县| 南京市| 德州市| 金溪县| 盘山县| 沙河市| 泽州县| 长治市| 吉林市| 广灵县| 精河县| 天镇县| 鹤峰县| 依兰县| 剑阁县| 奈曼旗| 钟山县| 昌江|