SQL SERVER 2008 数据变更捕获(CDC )
SQL SERVER 2008 异步捕获表数据修改
写的不对的地方请各位指正,写的也比较乱。讲究这看吧。^ ^
/*
SQL SERVER 2008 异步捕获表数据修改
SQL server 2008为异步跟踪所有发生在用户表上的数据修改提供了内建的方法,
而不需要编写自定义的触发器或者查询,变更数据捕获拥有最小性能开销,可以
用于其它数据源的持续更新,例如,将OLTP数据库中的数据变更迁移到数据仓库
数据库.下面我们演示该功能.
*/
/*
1 建立测试数据库
*/
IF NOT EXISTS (SELECT NAME from SYS.databases WHERE name='CDC_TEST_DB')
BEGIN
CREATE DATABASE CDC_TEST_DB
END
/*
2 在把CDC增加到CDC_TEST_DB数据库的表中,首先应该验证数据库是否启用了数据
捕获
*/
--验证是否开启
SELECT IS_CDC_ENABLED from SYS.databases WHERE name='CDC_TEST_DB'
/*
IS_CDC_ENABLED
--------------
0
(1 行受影响)
*/
--启用数据变更,在CDC_TEST_DB数据库中执行SYS.SP_CDC_ENABLE_DB存储过程:
USE CDC_TEST_DB
GO
EXEC sys.SP_CDC_ENABLE_DB
GO
/*
CDC_TEST_DB开启数据捕获后,你将会在CDC_TEST_DB->安全性->架构下面看到新
建立了一个CDC架构.
同样在CDC_TEST_DB会建立一些CDC架构的下的系统表:
cdc.captured_columns
返回指定的跟踪列
cdc.change_tables
返回启用CDC的表.使用sys.sp_cdc_help_change_data_capture比直接查询好.
 
相关文档:
今天下了个WIN7的英文包把系统换成英文的。感觉还行,可是当创建数据库表时发现出错了,查了下才知道是SQL的排序出问题了
下面是CTRL+c V搞过来的,只是方便大家有这样的问题可以得到解决
使用SQL2005进行创建数据库的时候,如果遇到创建失败的情况,如下:
Create 对于 数据库“xxxx”失败。 (Microsoft.SqlS ......
【汇总】SQL CODE --- 经典·精彩
数据操作类 SQLHelper.cs
无限级分类 存储过程
百万级分页存储
SQL经典短小代码收集
学生表 课程表 成绩表 教师表
50个常用sql语句
SQL SERVER
与ACCESS、EXCEL的数据转换
游标
根据不同的条件查询不同的表
INNER JOIN 语法
master.dbo.sp ......
一、创建一张空表:
Sql="Create TABLE [表名]"
二、创建一张有字段的表:
Sql="Create TABLE [表名]([字段名1] MEMO NOT NULL, [字段名2] MEMO, [字段名3] COUNTER NOT NULL, [字段名4] DATETIME, [字段名5] TEXT(200), [字段名6] TEXT(200))
字段类型:
2 : "SmallInt", // 整型
3 : "Int", ......
-- 查看当前db的登陆
select * from sys.sql_logins
-- 审核登陆数据库的用户
sql server managerment studio中,右键点开服务器的属性,在安全性页签中, 选中审核“成功和失败的登陆”,所有登陆都会在..MSSQL\Log\ERRORLOG中记录一条记录。
如果勾选“启用C2审核跟踪”,将会在..MSSQL\Log\目录 ......