sp_getqueuedrows (Transact-SQL)
在订阅服务器上检索在队列中有未决更新的行。此存储过程在订阅服务器上针对订阅数据库执行。
语法
sp_getqueuedrows [ @tablename = ] 'tablename'
[ , [ @owner = ] 'owner'
[ , [ @tranid = ] 'transaction_id' ]
参数
- [ @tablename =] 'tablename'
表的名称。tablename 的数据类型为 sysname,无默认值。该表必须是排队订阅的一部分。
- [ @owner =] 'owner'
订阅的所有者。owner 的数据类型为 sysname,默认值为 NULL。
- [ @tranid = ] 'transaction_id'
允许按事务 ID 筛选输出。transaction_id 的数据类型为 nvarchar(70),默认值为 NULL。如果已指定,则显示与排队命令关联的事务 ID。如果为 NULL,则显示队列中的所有命令。
返回代码值
0(成功)或 1(失败)
结果集
显示所有当前对订阅表至少有一个排队事务的行。
列名 | 数据类型 | 说明 |
---|---|---|
Action |
nvarchar(10) |
同步发生时采取的操作类型。 INS= 插入 DEL = 删除 UPD = 更新 |
Tranid |
nvarchar(70) |
执行命令的事务 ID。 |
table column1...n |
|
tablename 中指定的表中每列的值。 |
msrepl_tran_version |
uniqueidentifier |
该列用于跟踪对已复制数据的更改以及在发布服务器上执行冲突检测。该列自动添加到表中。 |
备注
sp_getqueuedrows 用于参与排队更新的订阅服务器。
sp_getqueuedrows 查找订阅数据库上的给定表中已参与排队更新但当前还没有由队列读取器代理程序解析的行。
权限
sp_getqueuedrows 要求对 tablename 中指定的表具有 SELECT 权限。