The meta data is from an SQL 2012 Server.
I have posted alot more, find the whole list here.
Goto Definition or MetaData
Definition:
sys.sp_MSIfExistsSubscription(nvarchar @publisher, nvarchar @publisher_db
, nvarchar @publication
, int @type)
MetaData:
create procedure sys.sp_MSIfExistsSubscription ( @publisher sysname, @publisher_db sysname, @publication sysname, @type int -- replication type, 1 - transactional/snapshot, 2 - merge -- ) as begin declare @publisher_id smallint declare @publication_id int -- -- security check -- only replmonitor can execute this -- if not (is_member(N'db_owner') = 1 or isnull(is_member(N'replmonitor'),0) = 1) begin raiserror(14260, 16, -1) return (1) end if @type not in (1,2) begin RAISERROR(21055, 16, -1, '@type','sp_MSIfExistsSubscription') RETURN (1) end set nocount on select @publisher_id = srvid from master.dbo.sysservers where UPPER(srvname) = UPPER(@publisher) if @type = 1 begin select @publication_id = publication_id from dbo.MSpublications where publisher_id = @publisher_id and publisher_db = @publisher_db and publication = @publication and (publication_type = 0 or publication_type = 1) select TOP 1 1 from MSdistribution_agents a where exists (select * from dbo.MSsubscriptions s where (a.id = s.agent_id or a.anonymous_agent_id = s.agent_id) and s.publisher_id = @publisher_id and s.publisher_db = @publisher_db and -- For 6.x publisher, we don't know the association between the publication -- and subscriptions. Show every dist agent under each publication. (s.publication_id = @publication_id or s.publication_id = 0 ) and (a.subscriber_id >= 0 or a.subscriber_id is NULL)) end else begin select @publication_id = publication_id from dbo.MSpublications where publisher_id = @publisher_id and publisher_db = @publisher_db and publication = @publication and publication_type = 2 -- Merge select TOP 1 1 from dbo.MSmerge_agents where publisher_id = @publisher_id and publisher_db = @publisher_db and publication = @publication end end
No comments:
Post a Comment