在 SQL Server 中,在“订阅端”,如何知道表是否处于复制/订阅状态?
有什么想法吗?
最佳答案
我不确定这个问题是否有一个简单的答案,并且我认为答案可能会根据复制类型的不同而有所不同。我认为你可能必须依靠启发法来回答这个问题。
对于快照复制,我想不出任何会泄露游戏的信息。显然,复制表(例如 MSreplication_objects
)的存在告诉您复制正在数据库内发生,但据我所知,没有任何关于表的具体线索。
对于事务复制(非更新),您可以通过 MSreplication_objects
(这将列出一些存储过程)然后使用 sys.sql_dependencies
找到与这些相关的表
对于事务复制(更新),您可以查看 MSsubscription_articles
(或者查找表中是否存在订阅更新触发器)
对于合并复制,您可以查看 sysmergearticles
,但您还必须查看 sysmergesubscriptions
以确定您处于订阅方。
关于SQL Server : subscription : how to know if a table is under replication/subscription,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4744282/