sp_deletetracertokenhistory (Transact-SQL)

删除 MStracer_tokens (Transact-SQL)MStracer_history (Transact-SQL) 系统表中的跟踪令牌记录。此存储过程用于在发布服务器上对发布数据库执行,或在分发服务器上对分发数据库执行。

主题链接图标Transact-SQL 语法约定

语法

sp_deletetracertokenhistory [ @publication = ] 'publication' 
    [ , [ @tracer_id = ] tracer_id ]
    [ , [ @cutoff_date = ] cutoff_date ]
    [ , [ @publisher = ] 'publisher' ] 
    [ , [ @publisher_db = ] 'publisher_db' ]

参数

  • [ @publication= ] 'publication'
    要插入跟踪令牌的发布的名称。publication 的数据类型为 sysname,没有默认值。

  • [ @tracer_id= ] tracer_id
    要删除的跟踪令牌的 ID。tracer_id 的数据类型为 int,默认值为 NULL。 如果为 null,则删除属于该发布的所有跟踪令牌。

  • [ @cutoff_date= ] cutoff_date
    指定一个截止日期,以便删除在该日期之前插入到发布的所有跟踪令牌。cutoff_date 的数据类型为 datetime,默认值为 NULL。

  • [ @publisher= ] 'publisher'
    发布服务器的名称。publisher 的数据类型为 sysname,默认值为 NULL。

    注意注意

    应只为非 MicrosoftSQL Server 发布服务器指定此参数。

  • [ @publisher_db= ] 'publisher_db'
    发布数据库的名称。publisher_db 的数据类型为 sysname,默认值为 NULL。 如果在发布服务器上执行该存储过程,将忽略此参数。

返回代码值

0(成功)或 1(失败)

注释

sp_deletetracertokenhistory 用于事务复制。

执行 sp_deletetracertokenhistory 时,只能指定 tracer_idcutoff_date 中的一个。 如果同时指定了这两个参数,便会发生错误。

如果没有执行 sp_deletetracertokenhistory 来删除跟踪令牌元数据,则该信息会在定期计划的历史记录清除执行时被删除。

可以通过执行 sp_helptracertokens (Transact-SQL) 或查询 MStracer_tokens (Transact-SQL) 系统表来确定跟踪令牌 ID。

权限

只有 sysadmin 固定服务器角色成员、发布数据库中的 db_owner 固定数据库角色成员或者分发数据库中的 db_owner 固定数据库角色成员或 replmonitor 角色成员才能执行 sp_deletetracertokenhistory