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_MSdrop_anonymous_entry(uniqueidentifier @subid, nvarchar @login
, int @type)
MetaData:
CREATE PROCEDURE sys.sp_MSdrop_anonymous_entry
(
@subid uniqueidentifier,
@login sysname,
@type int -- 1 tran sub, 2 merge sub
)
as
begin
declare @sid varbinary(85)
declare @agent_id int, @retcode int
set nocount on
--
-- security check
-- only db_owner can execute this
--
if (is_member ('db_owner') != 1)
begin
raiserror(14260, 16, -1)
return (1)
end
if @type not in (1,2)
begin
raiserror(20587, 16, -1, '@type', 'sp_MSdrop_anonymous_entry')
return (1)
end
-- If tran
if @type = 1
begin
select @sid = sid from MSdistribution_agents where
anonymous_subid = @subid
end
else
begin
select @sid = sid from dbo.MSmerge_agents where
anonymous_subid = @subid
end
if @sid is null
begin
RAISERROR (14055, 11, -1)
return(1)
end
-- null login means no security check needed
if @login is not null and suser_sid(@login, 0) <> @sid
begin
set @login = suser_sname(@sid)
RAISERROR (20596, 11, -1, @login)
RETURN (1)
end
if @type = 1
begin
select @agent_id = id from MSdistribution_agents where anonymous_subid = @subid
if @agent_id is not null
begin
exec @retcode = sys.sp_MSdrop_distribution_agentid @agent_id
if @retcode <> 0 or @@error <> 0
return 1
end
end
else
begin
select @agent_id = id from dbo.MSmerge_agents where anonymous_subid = @subid
if @agent_id is not null
begin
exec @retcode = sys.sp_MSdrop_merge_agentid @agent_id
if @retcode <> 0 or @@error <> 0
return 1
end
end
end
No comments:
Post a Comment