CDC变更数据捕获

(2013-03-20 15:25:52)

  分类: SQL

SQL Server中记录数据变更的四个方法:触发器、Output子句、变更数据捕获(Change Data Capture )功能、同步更改跟踪。

这里记录下cdc:
变更数据捕获可记录应用于 SQL Server 表的插入、更新和删除活动。
对数据库中的某张表启用变更数据捕获,例子:
CREATE DATABASE test1
 
USE test1
CREATE TABLE [dbo].[WSTtestTBL](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](20) NULL
) ON [PRIMARY]
 
sp_cdc_enable_db --对当前数据库启用变更数据捕获
SELECT is_cdc_enabled FROM sys.databases WHERE name='test1' -- 对数据库启用变更数据捕获成功
 
sp_cdc_enable_table @source_schema='dbo', @source_name = 'WSTtestTBL', @role_name = 'cdc_role'--源表标识为跟踪的表(条件:启动SQLServerAgent服务)
 
--EXECUTE sys.sp_cdc_help_change_data_capture --指定表的变更数据捕获配置信息
--    @source_schema = N'dbo', 
--    @source_name = N'WSTtestTBL';
--GO
 
insert into WSTtestTBL values('jiayiw')
delete from WSTtestTBL WHERE name ='jiayiw'
insert into WSTtestTBL values('wangshuting')
UPDATE WSTtestTBL SET name='zhangjie' WHERE NAME='wangshuting'
--SELECT * FROM WSTtestTBL
select * from cdc.dbo_WSTtestTBL_CT 
 
--__$operation=2的情况,表示新增
--__$operation=3或者4,表示更新,3表示旧值,4表示新值
--__$operation=1的情况,表示删除
 

另外,还可以用cdc实现增量加载(SSIS)

CDC变更数据捕获的更多相关文章

  1. SQL Server 变更数据捕获(CDC)监控表数据

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现过程(Realization) 补充说明(Addon) 参考文献(References) ...

  2. SQL Server 变更数据捕获(CDC)

    标签:SQL SERVER/MSSQL SERVER/数据库/DBA/字段/对象更改 概述 变更数据捕获用于捕获应用到 SQL Server 表中的插入.更新和删除活动,并以易于使用的关系格式提供这些 ...

  3. SQL Server 2008中新增的 1.变更数据捕获(CDC) 和 2.更改跟踪

    概述 1.变更数据捕获(CDC)        每一次的数据操作都会记录下来 2.更改跟踪       只会记录最新一条记录   以上两种的区别:         http://blog.csdn.n ...

  4. SQL Server 2008中新增的变更数据捕获(CDC)和更改跟踪

    来源:http://www.cnblogs.com/downmoon/archive/2012/04/10/2439462.html  本文主要介绍SQL Server中记录数据变更的四个方法:触发器 ...

  5. SqlServer 2014该日志未截断,因为其开始处的记录是挂起的复制操作或变更数据捕获

    环境:AlwaysOn集群 操作系统:Windows Server 2008 R2 数据库: SQL Server 2014 错误提示:“该日志未截断,因为其开始处的记录是挂起的复制操作或变更数据捕获 ...

  6. 在SSIS 2012中使用CDC(数据变更捕获)

    最新项目稍有空隙,开始研究SQL Server 2012和2014的一些BI特性,参照(Matt)的一个示例,我们开始体验SSIS中的CDC(Change Data Capture,变更数据捕获). ...

  7. SqlServer Change Data Capture(CDC)数据变更捕获

    最近在使用SqlServer2008r2数据库做系统的时候,在某些重要的.经常涉及到修改的表上,想加上一些恢复机制,一开始想找找看看有没有类似Oracle数据库闪回那样的功能,后来发现CDC的功能可以 ...

  8. CDC-更改数据捕获存储过程 (Transact-SQL)-学习

    背景: 在SQLServer2008之前,对数据变更的捕获通常使用触发器.时间戳等低效高成本的功能来实现,所以很多系统都没有做数据变更或者仅仅对核心表做监控. 适用环境: 仅在SQLServer200 ...

  9. Oracle CDC (Change Data Capture)更新数据捕获——Asynchronous HotLog Mode(附带简单的kettle任务实现数据同步)

    Performing Asynchronous HotLog Publishing Step 1   Source Database DBA: Set the database initializat ...

随机推荐

  1. (Qt 翻译) QGLAbstractScene

    QGLAbstractScene Class Reference #include <QGLAbstractScene> This class was introduced in Qt3D ...

  2. 推荐两个Laravel插件网站

    1.https://packagist.org 2.http://packalyst.com

  3. 使用file_get_content系列函数和使用curl系列函数采集图片的性能对比

    由于公司的一个汽车网站的后台的汽车内容都是主要是来自与汽车之家的,编辑的同事们必须天天手动去对着汽车之家来添加汽车,实在是太蛋疼了.于是乎,为了改变这种状况,作为一个开发码农,我的任务就来了...那就 ...

  4. sshd服务---暴力破解应对策略

    sshd服务暴力破解步骤 sshd暴力破解方法 防止暴力破解调优 1. 变更默认端口 2. 变更root用户 3. 日志监控-->防止暴力破解(fail2ban应用) fail2ban详解 在初 ...

  5. Oracle EBS-SQL (WIP-15):检查车间任务物料未发数量与现有量对照.sql

    select we.wip_entity_name                          任务号      ,mfg_lookups_wjs.meaning               作 ...

  6. ApiDemos示例学习(2)——App->Activity->Animation

    现在介绍一下com.example.android.app包下的Animation示例. 关键类及函数: ActivityOption overridePendingTransition() make ...

  7. Egret的若干局限

    Egret是个好东西,整套workflow用下来,特别顺手,对于移动端游戏的开发来说,选择Egret无疑是个不二的选择. 当然,小学语文课上老师就教过一种写作手法,欲扬先抑,笔者今天倒过来,来说说Eg ...

  8. 解决Admob Banner首次展示不显示的问题

    Admob banner在第一次虽然加载成功了,但是却不显示.然后等待60秒刷新自动刷新,banner就能正常显示. 如果你没遇到过这种情况,那可能你用的不是集成在play-services里的库,因 ...

  9. linux学习之(四)-用户、组的操作,给文件文件夹设置组,更改目录权限、文件权限

    命令帮助查看: man 命令(查看一个命令的详细帮助信息) 例:man useradd 或者用  -h   格式   命令 -h(查看一个命令的简要帮助) 例:useradd -h 用户: 在user ...

  10. #include <time.h>

    1 _strtime 2 difftime 3 srand 4 time 1 _strtime 函数简介 函数名: _strtime 头文件: time.h 函数原型: char * _strtime ...