sys.sp_generate_database_ledger_digest (Transact-SQL)
适用于:SQL Server 2022 (16.x) Azure SQL 数据库 Azure SQL 托管实例
生成账本摘要,这是最后一个块的 sys.database_ledger_blocks
哈希。 如果最后一个块处于打开状态(事务分组到块,但没有生成最终块哈希),则此存储过程将关闭该块并生成哈希。 将来的事务随后将被分配给下一个块。
语法
sys.sp_generate_database_ledger_digest
参数
无。
返回代码值
0
(成功)或 1
(失败)。
结果集
结果在名为 latest_digest
的列中返回,该列是包含以下数据的 JSON 文档:
JSON 属性 | 说明 |
---|---|
database_name |
数据库的名称。 |
block_id |
与 block_id 中 sys.database_ledger_blocks 最后一行相同。 |
hash |
表示最后 sys.database_ledger_blocks 一行的 SHA-256 哈希的十六进制字符串。 |
last_transaction_commit_time |
与 commit_time ISO 8601 格式的最后一行 sys.database_ledger_blocks 相同。 |
digest_time |
以 ISO 8601 格式生成摘要的时间。 |
下面是 JSON 文档的示例:
{
"database_name": "contoso",
"block_id": 0,
"hash": "0x6D7D609DE43DDBF84A0346463D6F93CA979846CD5609E02E4FFC96338FC64DD5",
"last_transaction_commit_time": "2020-10-06T16:50:55.1066667",
"digest_time": "2020-10-07T01:13:23.3601279"
}
权限
允许具有公共角色的用户执行此存储过程。