sys.fn_cdc_decrement_lsn (Transact-SQL)
适用于:SQL Server
根据指定的 LSN 返回序列中的上一个日志序列号 (LSN)。
语法
sys.fn_cdc_decrement_lsn ( lsn_value )
参数
lsn_value
LSN 值。 lsn_value 是 二进制 (10) 。
返回类型
binary(10)
备注
此函数返回的 LSN 始终小于指定值,并且两个值之间不能存在 LSN 值。
权限
需要 公共 数据库角色的成员身份。
示例
下例在一个返回 LSN 值小于最大 LSN 值的更改数据行的查询中,使用 sys.fn_cdc_decrement_lsn
来设置 LSN 上限。
Use AdventureWorks2022;
GO
DECLARE @from_lsn binary(10), @to_lsn binary(10);
SET @from_lsn = sys.fn_cdc_get_min_lsn('HumanResources_Employee');
SET @to_lsn = sys.fn_cdc_decrement_lsn(sys.fn_cdc_get_max_lsn());
SELECT * FROM cdc.fn_cdc_get_all_changes_HumanResources_Employee( @from_lsn, @to_lsn, 'all');
GO
注意
如果在调用 cdc.fn_cdc_get_all_changes_<capture_instance>
或 cdc.fn_cdc_get_net_changes_<capture_instance>
时提供的 LSN 范围不合适,则预期会出现错误 313。 lsn_value
如果参数超过最低 LSN 或最高 LSN 的时间,则执行这些函数将返回错误 313:Msg 313, Level 16, State 3, Line 1 An insufficient number of arguments were supplied for the procedure or function
。 此错误应由开发人员处理。 有关解决方法的示例 T-SQL,请参阅 GitHub 上的 ReplTalk。
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈