2009-08-05 44 views
0

我想了解SQL Server 2005复制是如何工作的,我正在看标题为Msmerge_[Publication]_[Table]_VIEW的视图。这些观点似乎定义合并过滤器,并且是相当直接的,除了WHERE子句中的SQL的一行:在Msmerge _ * _ VIEW视图中调用ISPALUSER函数是做什么的?

AND ({fn ISPALUSER('1A381615-B57D-4915-BA4B-E16BF7A9AC58')} = 1) 

什么是ISPALUSER功能吗?我似乎无法在管理工作室的任何功能下找到它,也没有在网络上提及它。

(我在看这些观点的理由是,我们有一个性能问题,当客户端复制了新的记录。SQL LIKE if not exists (select 1 from [MSmerge_[Publication]_[Table]_VIEW] where [rowguid] = @rowguid)运行,并采取10+秒行,这样obiously杀死性能,当你有几个行向上)

回答

1

似乎它检查用户是否在特殊安全角色MSmerge_PAL_role,似乎管理谁有权访问复制功能。

因此,ISPALUSER检查用户是否在该特定角色。

还不确定PAL代表什么。

+0

PAL代表发布访问列表。 – mwolfe02 2011-05-16 19:14:57

相关问题