June 4, 2012

sp_MSunmarkreplinfo (Transact-SQL MetaData) Definition

Please note: that the following source code is provided and copyrighted by Microsoft and is for educational purpose only.
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_MSunmarkreplinfo(nvarchar @object
, nvarchar @owner
, smallint @type)

MetaData:

 create procedure sys.sp_MSunmarkreplinfo(  
@object sysname, -- Name of the table, unqualitied --
@owner sysname = NULL, -- Name of the owner, unqualified --
@type smallint = 0 -- default is to unmark, as name implies --
)AS
declare @id int
declare @qualified_name nvarchar(517)
declare @retcode int

exec @retcode = sys.sp_MSreplcheck_subscribe_withddladmin
if @@error<>0 or @retcode<>0
return (1)

if @owner is NULL or @owner=''
select @owner = schema_name(schema_id) from sys.objects where name=@object
select @qualified_name = QUOTENAME(@owner) + '.' + QUOTENAME(@object)

if object_id(@qualified_name, 'U') is NULL
return 0

BEGIN TRANSACTION
select @id = object_id(@qualified_name)
if not (@id is null)
begin
EXEC %%Object(MultiName = @qualified_name).LockMatchID(ID = @id, Exclusive = 1, BindInternal = 0)
-- EXEC %%Object(MultiName = @qualified_name).LockExclusiveMatchID(ID = @id)
if @@error <> 0
select @id = null
end

if not (@id is null)
begin
if @type = 0 -- type = 0, unmark; else mark the bit --
EXEC %%Relation(ID = @id).SetMergePublished(Value = 0, SetColumns = 1)
else
EXEC %%Relation(ID = @id).SetMergePublished(Value = 1, SetColumns = 1)
end
COMMIT TRANSACTION

No comments:

Post a Comment

Total Pageviews