sp_deletemergeconflictrow (Transact-SQL)
适用范围:SQL Server
从冲突表或 MSmerge_conflicts_info 表中删除行。 此存储过程在存储冲突表的计算机的任何数据库中执行。
语法
sp_deletemergeconflictrow
[ [ @conflict_table = ] N'conflict_table' ]
[ , [ @source_object = ] N'source_object' ]
, [ @rowguid = ] 'rowguid'
, [ @origin_datasource = ] 'origin_datasource'
[ , [ @drop_table_if_empty = ] 'drop_table_if_empty' ]
[ ; ]
参数
[ @conflict_table = ] N'conflict_table'
冲突表的名称。 @conflict_table为 sysname,默认值为 %
. 如果指定了@conflict_tableNULL
,%
则假定冲突是删除冲突,并且从MSmerge_conflicts_info表中删除与@rowguid、@origin_datasource和@source_object匹配的行。
[ @source_object = ] N'source_object'
源表的名称。 @source_object为 nvarchar(386),默认值为 NULL
.
[ @rowguid = ] 'rowguid'
删除冲突的行标识符。 @rowguid为 uniqueidentifier,没有默认值。
[ @origin_datasource = ] 'origin_datasource'
冲突的起源。 @origin_datasource为 varchar(255),没有默认值。
[ @drop_table_if_empty = ] 'drop_table_if_empty'
一个标志,指示 如果@conflict_table 为空,则将其删除。 @drop_table_if_empty为 varchar(10),默认值为 false
.
返回代码值
0
(成功)或 1
(失败)。
注解
sp_deletemergeconflictrow
用于合并复制。
MSmerge_conflicts_info表是系统表,并且不会从数据库中删除,即使该表为空也是如此。
权限
只有 sysadmin 固定服务器角色的成员或db_owner固定数据库角色的成员才能执行sp_deletemergeconflictrow
。