由于时间戳和排队的事务,无法创建sql server复制订阅,但这是不对的

时间:2010-07-26 23:03:07

标签: sql-server-2005 database-replication

在Sql Server 2005中,我们有一些表的发布。 该出版物对DB2数据库进行了3次推送订阅(使用HIS2009的连接器)并且已经持续了几个月。 试图添加另一个订阅,几乎与现有订阅相同,除了它是一个独特的服务器,我们得到:

SQL Server could not create a subscription for Subscriber 'MY-DATABASE-2'.
 An exception occurred while executing a Transact-SQL statement or batch. 
  OLE DB or ODBC Subscribers cannot subscribe to article 'my_table_1' in publication
  'my_publication' because the article has a timestamp column and the publication is
  'allow_queued_tran' (allows queued updating subscriptions). 
  The subscription could not be found.
  Microsoft SQL Server, Error 21249

然而:

  • my_table_1不包含时间戳列
  • 该出版物有allow_queued_tran = False
  • 此出版物上还有其他成功的OLE-DB DB2订阅
  • 发布中的其他表不包含时间戳。其中一些包含日期列,DB2等效类型为“timestamp”,但DB2中的“timestamp”仅表示(日期和时间) - 而不是系统生成的时间标记。

2 个答案:

答案 0 :(得分:0)

奇怪的是,我们能够使用相同的表,过滤器等创建新的出版物,并为其添加新的订阅。 所以,虽然没有真正回答,但它已得到解决。

答案 1 :(得分:0)

我今天遇到了同样的问题,但找不到解决方案。我删除了现有的订阅和发布,重新开始,然后它工作。非常奇怪的问题。