【问题标题】:Poor man's SQL pipeline service for SQL express 2008 R2SQL express 2008 R2 的穷人 SQL 管道服务
【发布时间】:2010-08-26 09:21:28
【问题描述】:

我有一个基本/简单的需求,需要创建从一个 SQL express 2008 数据库到另一台服务器(同样是 SQL 2008 express)的管道传输过程。

基本上:

  1. 我在服务器 A 上有一个表,其中有数据进入,还有一个名为“已下载”的默认字段,默认设置为“N”

  2. 我在 SERVER B 上有相同的表架构

  3. 在定时的基础上(比如每 10 分钟),我需要从服务器 A 获取所有记录,其中“已下载”字段设置为“N”,并将整个记录复制到服务器 B

  4. 当服务器 A 中的每条记录都被读取/成功复制到服务器 B 时,我将“已下载”标志设置为“Y”(也带有时间戳字段)。

从旧的记忆中,我使用 DTS(我猜现在是 SSIS)来做类似的事情。但当然 SQL express 没有可爱之处!!

问题:

这只是 SQL 数据读取器从 SERVER A 获取数据并手动将 SQL 语句插入到 SERVER B(或当然是 proc)的情况吗?还有其他巧妙的方法吗?

感谢所有cmets...

【问题讨论】:

    标签: c# sql-server-express dts data-transfer sql-server-2008-r2


    【解决方案1】:

    哦,不要使用标志!它们不适合索引。

    向源表和目标表添加两列: dt_created dt_modified。

    为每一个添加一个索引。

    从您的目标数据库中,为 dt_created > max(target table.dt_created) 选择源数据库/表。这些是你的新记录。 对 dt_modified 执行相同的操作,这些将是您修改的记录。看!穷人的复制。

    【讨论】:

    • 酷..其实从来没有想过那个!感谢您的回复.. 会做!
    【解决方案2】:

    那么,带有复制功能的 MySQL 怎么样?便宜又漂亮:-) 但是我担心更改数据库为时已晚...

    【讨论】:

    • 真的!当我有机会时.. 我需要考虑使用 mySQL/MariaDB 作为另一种选择.. 我想很难留下你所知道的.. 舒适的拖鞋综合症!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多