问题标签 [merge-replication]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
360 浏览

sql-server - Occasionally connected application (SQL Server data synchronization)

There is a central server that is running SQL Server 2008 R2 and WinForms clients, which use SQL Server CE to cache data. Data can be changed on both the server and client side. Each user can only edit his own data and view some of the data of other users. For example, a user can create a "Contract" and upload it to the server via synchronization, other users need to see this "Contract", except for customer's contact information, etc.

What a way to synchronize data is most suitable for this task?

Thanks in advance.

0 投票
2 回答
421 浏览

sql-server-2008 - 在复制表上添加/修改唯一约束

我在复制环境中有一个现有表,我知道可以在此表上进行的架构更改受到限制。我可以执行以下操作。

  1. 在发布者上添加一个独特的约束,它会复制到订阅者吗?
  2. 如果该表上存在现有的唯一约束,我可以在发布者上修改它并且修改会复制到订阅者吗?

TIA

0 投票
4 回答
33345 浏览

sql-server-2008 - 00000000-0000-0000-0000-000000000000 的 GUID 导致合并索引冲突

我们的开发人员有一个与我的数据库对话的 linq-2-sql 项目。数据库参与合并复制。它已经使用了一段时间并且运行良好。最近的表已添加到架构中,现在在添加新记录时会导致问题。

用户收到一条错误消息,指出与合并复制自动创建的 guid 相关的索引违反了唯一约束。

据我所知,这张桌子与所涉及的其他桌子没有任何不同。我已经从头开始重新创建了整个复制发布/订阅模型,并且除了那个表之外一切都继续工作。

有人有想法么?正在创建的 guid 显示为 00000000-0000-0000-0000-000000000000,这可以解释为什么它是重复的。为什么 linq 没有创建有效的 guid?

0 投票
1 回答
2079 浏览

sql-server-2008 - 从 Win CE 设备到 SQL Server 2008 R2 的 SQL 复制

我有一个 Windows CE 设备,我想将数据复制到 SQL Server 2008 R2 数据库。我了解复制的基础知识,我需要使用 MSDN 的“双服务器拓扑”。其中有一个 IIS 框和一个单独的 SQL Server 框。

我在 SQL 数据库上设置了复制和发布。此外,在 IIS 框上,我创建了一个虚拟目录,并通过 UNC 在数据库框上创建了物理文件夹。现在我正在配置 IIS 框。

根据“双服务器拓扑”,我不需要在 IIS 机器上安装 SQL Server。只是 SQL Server Compact Edition 3.5 工具。但是,当我为 CE 工具安装运行设置时,它会失败,说明未安装复制组件。经过调查,似乎安装复制组件的唯一方法是通过 SQL Server 安装。

我错过了什么吗?我可以在没有安装 SQL Server 的情况下让 IIS 框独立吗?

0 投票
1 回答
891 浏览

sql-server-2008 - SQL 复制,CE 设备

我有一个 Windows CE 设备,我想将数据复制到 SQL Server 2008 R2 数据库。我了解复制的基础知识,我需要使用 MSDN 的“双服务器拓扑”。其中有一个 IIS 框和一个单独的 SQL Server 框。

我在 SQL 数据库上设置了复制和发布。此外,在 IIS 框上,我创建了一个虚拟目录,并通过 UNC 在数据库框上创建了物理文件夹。所以 IIS 框上的虚拟目录路径看起来像“\databasebox\c$\Replications”。我在两个盒子上都设置了一个用户,并且能够成功测试连接。

我可以通过以下路径从设备浏览到虚拟目录:“https://www.mydomain.com/Replications”,并且在打开目录浏览的情况下,我可以看到 sqlcesa35.dll。

问题是添加订阅。使用 Web 同步向导,我无法完成该过程。我到了配置现有虚拟目录的地步。选择它并得到一个错误“ConnWiz - 本地路径的格式不正确”。如果我使用该向导创建一个新的虚拟目录并完全添加远程目录 UNC,则它不允许这样做。

我试过映射驱动器,不允许。这必须是可能的,它是微软“双服务器拓扑”的一部分。

如何在 IIS box-1 上创建复制订阅,其中虚拟目录指向 box-2 上的文件夹?

0 投票
1 回答
341 浏览

sql-server-2008 - Sql Server 2008 R2 中的中央订阅者复制

我们在这个办公室有区域办事处和一些数据。我们希望每天将数据从每个区域办事处传输到中央办公室。因此我需要中央订户拓扑。我实施中央订户事务复制但我有一个问题,事务复制,如果一个新的区域办事处想要加入这些复制,它的数据库必须是空的,但是当一个新软件安装在新的区域办事处时,它会用一些行填充新数据库,然后当我设置事务复制时,它不会将这些数据传输到中央服务器,所以我认为需要合并复制。但是我搜索并没有找到任何有用的帮助来实现“中央订阅者合并复制”。我该如何实现“中央订阅者合并复制“?

0 投票
1 回答
322 浏览

sql-server-2008 - 仅使用存储过程通过合并复制访问数据库是否有优势?

我有一个项目,其中 SP 是应用程序用来访问或修改 Sql Server 2008 DB 的唯一方式。我有开发人员要求放弃仅使用 SP 的方法,让他们直接在 DB 上使用 Linq to Sql。我必须决定是否允许这样做。我必须添加另一条信息,该项目正在增长,在不久的将来我们可能需要第二台具有合并复制的 Sql 服务器机器。

我之所以这么说是因为我相信(但我现在在 Internet 上找不到对此的任何支持)仅使用 SP 方法在合并复制方案中是有益的,因为这将避免冲突并带来更好的性能。

这个说法有道理吗?您能否链接到证明或反驳该陈述的参考文献?你怎么看?

这已经成为做出决定的决定性因素。

0 投票
0 回答
872 浏览

sql-server-2008 - 两个以上表之间的连接过滤器

所以,我有一个场景,我有一篇文章要根据出版物中的另外两篇文章进行过滤。如果我把它写成 T-SQL,它会是:

查看sp_addmergefilter,它接受一个名为的参数@join_articlename,这意味着您一次只能加入一个表。有没有办法完成我想做的事情?提前致谢。

0 投票
1 回答
7536 浏览

sql-server - SQL Server 复制:在发布者处删除损坏的订阅

我们的订阅者有多个订阅(合并拉取),只有 1 个“真实”订阅。我认为我们实际上是通过在订阅者端添加和删除订阅来破坏它,然后尝试复制它......多次。

现在问题不在于复制不起作用,我非常有信心我可以解决这个问题。问题是我不能再删除/删除订阅者的损坏订阅了。它只是行不通。

尝试sp_dropmergepullsubscription在发布者处运行时,它告诉我“此出版物文章没有订阅”。

尝试sp_dropsubscription在发布者处运行时,它告诉我“此数据库未启用订阅”

是的,我已经检查过我是否在正确的数据库上运行了所有这些脚本以及所有这些。

以前有人遇到过这样的问题吗?我需要重新发布和订阅吗?

谢谢大家!:)

0 投票
2 回答
154 浏览

sql-server - SQL Server 性能建议

我一直在仅使用数据类型 int 的主键创建数据库表,并且我一直有很好的性能,但需要使用可更新订阅者设置合并复制。

这些表使用典型的主键、数据类型 int 和标识增量。设置合并复制,我必须将 rowguid 添加到所有表中,并使用 newsequentialid() 函数作为默认值。我注意到 rowguid 具有可索引性并且想知道我是否需要主键?

是否可以有 2 个索引,主键 int 和 rowguid?合并复制表的最佳布局是什么?我是否保留 int id 以便于行引用并仅删除索引但保留主键?不知道走什么路线,谢谢。