天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

追蹤記錄每筆業務操作數據改變的利器——SQLCDC

  對于大部分企業應用來用,有一個基本的功能必不可少,那就是Audit Trail或者Audit Log,中文翻譯為追蹤檢查、審核檢查或者審核記錄。我們采用Audit Trail記錄每一筆業務操作的基本信息,比如操作的基本描述、操作時間、操作者等。對于一些安全級別比較高的應用,或者操作一些比較敏感的數據,我們甚至需要記錄該筆業務操作引起的數據的改變。具體來說,這里的“數據改變”指的是每一條影響的記錄在操作執行前后的變化。對于添加的記錄,需要記錄下新插入的記錄;對于刪除的記錄,需要記錄下原來的記錄;對于更新的記錄,則需要同時記錄下更新前后的記錄。

  說到這里,很多人都會想到采用觸發器的方式來實現對數據改變的捕捉。但是這種實現方案具有一個最大的局限:由于觸發器是在數據操作所在事務范圍內執行的,所有會帶來性能的問題,嚴重的話還會因為觸發器的執行導致事務超市。所以在這里,我們介紹一種更好的解決方案:SQLCDC。

目錄
一、SQLCDC簡介
二、在數據庫級別開啟CDC
三、為某個數據表開啟CDC
四、記錄添加記錄的數據改變
五、記錄刪除數據的數據改變
六、記錄更新記錄的數據改變

  一、SQLCDC簡介

  CDC的全名為Change Data Capture,顧名思義,就是用于追蹤和捕捉數據改變。CDC是在SQL Server 2008中才出現的新特性,而這個特性則在很早之前就出現在了Oracle中。對于SQL Server之前版本來說,在沒有CDC的情況下,如果需要記錄基于某個數據表的數據改變,我們只能采用觸發器,具體來說就是通過手工創建After Insert、After Update和After Delete觸發器去記錄變化的數據。而CDC給了我們一種更為方便、易用和省心的方式去記錄某個數據表的歷史操作。

  二、在數據庫級別開啟CDC

  在默認的情況下,數據庫的CDC特性是被關閉的,你可以通過系統表sys.databases的is_cdc_enabled字段確定某個數據庫的CDC是否開啟。如果在默認的情況下,我執行如下的SQL語句查看數據庫TestDb的CDC是否開啟,你將會看到該字段的值為0。

  你可以通過執行系統存儲過程sys.sp_cdc_enable_db為當前數據庫開啟CDC特性。下面的T-SQL代碼片斷中,我們通過執行該存儲過程為TestDb打開了CDC特性。

Use TestDb
Go
Exec sys.sp_cdc_enable_db
Go

it知識庫追蹤記錄每筆業務操作數據改變的利器——SQLCDC,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 使劲别停好大好深好爽动态图 | 亚洲精品国产乱码AV在线观看 | 午夜福利小视频400 午夜福利网国产A | 国产日韩亚洲专区无码 | 毛片一区二区三区 | 13小箩利洗澡无码视频APP | 国产美女裸身网站免费观看视频 | 学生无码AV一区二区三区 | 秋霞在线观看视频一区二区三区 | 国产欧美日韩亚洲第一页 | 日本伦理片 中文字幕 | 久久精品成人免费网站 | 亚洲香蕉网久久综合影院 | 老熟人老女人国产老太 | 色欲精品国产AV久久久 | 亚洲精品白色在线发布 | 女仆翻身大作战 | 鲁大师影院在线视频在线观看 | 在线国产视频观看 | 日韩高清在线亚洲专区 | 尤物久久99国产综合精品 | 丰满人妻按磨HD | 久久精品午夜一区二区福利 | 久久免费看少妇高潮A片JA | 女人高潮久久久叫人喷水 | 国产精品99久久久久久AV色戒 | 一二三四在线高清中文版免费观看电影 | 久久91精品国产91久 | 午夜看片a福利在线观看 | 张津瑜的9分58秒7段免费 | 午夜性色一区二区三区不卡视频 | 桃隐社区最新最快地址 | 好色美女小雅 | 苍井空小公主qvod | 国产乱码二卡3卡四卡 | 老司机福利在 线影院 | 特黄特色大片免费播放器试看 | 精品国产午夜福利在线观看蜜月 | 天美麻豆成人AV精品 | 国产成人啪精品视频免费网 | 在线毛片片免费观看 |