当数据库不在同一排序规则中时事务复制的错误

Bug with transactional replication when databases are not in same collation

我们已经设置了事务复制,其中发布者和订阅者端数据库被放置在相同的 SQL 服务器下。发布者数据库排序规则和列级排序规则是 SQL_Scandinavian_Pref_CP850_CI_AS,而订阅者端是 Finnish_Swedish_CI_AS。 SQL 服务器排序规则也是 SQL_Scandinavian_Pref_CP850_CI_AS。当我尝试复制一个 varchar 列,该列的数据带有特殊字符,例如“åÅäÄÄöÖ”,然后它在订阅者端以“†„Ž”™'的形式交付,这是不可接受的。

你们能否提出任何解决方案以在订阅者端获取正确的数据?此外,如果无法修复此错误,请建议任何替代架构以在具有不同排序规则的数据库之间传递数据? 请提出建议。

这个问题与我 post 在 stackexchange.com 上编辑的另一个问题重复。 我也在那里 post 编辑了答案。请在 post 下面找到 link: https://dba.stackexchange.com/questions/278640/changing-collation-of-sql-database-in-production-environment-to-minimize-downtim/278933#278933