无法在复制表上更新/插入

时间:2011-10-11 11:57:38

标签: sql-server sql-server-ce replication

我在SQL Server上定义了一个表的单向发布。 在订阅者端(SQL Compact),我需要能够检索表的内容并修改它们,但这些修改不得发送回发布者。有时必须使用发布者的更新版本重新初始化表的内容,并删除本地进行的所有修改。我不关心可能出现的任何冲突,因为数据不会被发送回服务器。

问题是我无法更新/插入/删除表中的任何行,除非我将表发布为“双向”,这不是我想要的。在此表(在客户端)上尝试更新时,我收到以下错误:

  

SSCE_M_READONLY   “虽然执行RDA推送,SQL Server精简只有能够获得一个只读游标在桌子上(S)被推到SQL Server。可能有锁定SQL Server上的冲突,同时试图做推。确认SQL Server上的表是可更新的,然后再试一次。“

所以基本上,我想要的是:

  • 从服务器获取数据
  • 处理数据(插入/更新/删除)
  • 删除所有已修改的行
  • 同步表格(从服务器获取“干净”版本)

我不希望在同步时不重新下载表的所有内容,但这不是必须的。

1 个答案:

答案 0 :(得分:0)

复制就是要保持Publisher和Subscriber之间数据的一致性,所以我想你不想在你的情况下使用它。

如何设置可定期运行的SSIS包?它将执行查找并插入新行并将现有行重置为发布者为其提供的任何内容。与此处描述的类似:

http://beingoyen.blogspot.com/2010/03/ssis-how-to-update-instead-of-insert.html

enter image description here