

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 第 5 步：查看文档修订历史记录
<a name="getting-started-step-5"></a>

**重要**  
终止支持通知：现有客户将能够使用 Amazon QLDB，直到 2025 年 7 月 31 日终止支持。有关更多详细信息，请参阅[将亚马逊 QLDB 账本迁移到亚马逊 Aurora PostgreSQL](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)。

在上一步中修改车辆 VIN ` 1N4AL11D75C109151` 注册数据后，您可查询其所有注册车主的历史记录以及任何其他更新的字段。通过查询内置的 [历史记录函数](working.history.md#working.history.function)，您可以查看之前在中插入、更新和删除的车辆登记文件的所有三个修订版。

历史函数从表的*已提交视图*返回修订，其中包括应用程序数据和相关元数据。元数据准确显示了每次修订的时间、顺序以及提交修订的事务。

在此步骤中，您将在`vehicle-registration`分类账的`VehicleRegistration`表格中查询文档的修订历史记录。

**若要查看修订历史记录**

1. [在 /qldb 上打开亚马逊 QLDB 控制台。https://console.aws.amazon.com](https://console.aws.amazon.com/qldb)

1. 在导航窗格中，选择 **PartiQL 编辑器**。

1. 选择 `vehicle-registration` 分类账。

1. 要查询文档的历史记录，首先要找到其唯一的 `id`。除了查询已提交的视图外，获取文档 `id` 的另一种方法是在表格的默认用户视图中使用 `BY` 关键字。要了解更多信息，请参阅 [通过 BY 子句查询文档 ID](working.metadata.by-clause.md)。

   在查询编辑器窗口中输入以下语句，然后选择 **运行**。

   ```
   SELECT r_id FROM VehicleRegistration AS r BY r_id
   WHERE r.VIN = '1N4AL11D75C109151'
   ```

1. 接下来，您可以使用此 `id` 值来查询历史记录函数。输入以下语句并选择**运行**。确保将这些 `id` 值替换为自己文档 ID 的适当值。

   ```
   SELECT h.data.VIN, h.data.City, h.data.Owners
   FROM history(VehicleRegistration) AS h
   WHERE h.metadata.id = 'ADR2LQq48kB9neZDupQrMm' --replace with your id
   ```
**注意**  
在本教程中，此历史查询将返回文档 ID `ADR2LQq48kB9neZDupQrMm` 的所有修订版本。最佳做法是，使用日期范围（开始时间和结束时间）和文档 ID 来限定历史查询。  
QLDB 中的每个 `SELECT` 查询都是在事务中处理的，并且受[事务超时限制](limits.md#limits.fixed)的约束。包含开始时间和结束时间的历史记录查询将从日期范围限定中获得便利。有关更多信息，请参阅 [历史记录函数](working.history.md#working.history.function)。

   历史函数以与提交视图相同的模式返回文档。此示例投射您修改后的车辆登记数据。 输出应类似于以下内容。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/qldb/latest/developerguide/getting-started-step-5.html)
**注意**  
历史查询可能并不总是按顺序返回文档修订版。

   查看输出并确认更改是否反映了您在 [第 4 步：修改分类账中的文档](getting-started-step-4.md) 中所做的事情。

1. 然后，您可以检查每个修订版的文档元数据。输入以下语句并选择**运行**。同样，请务必根据需要将 `id` 值替换为您自己的证件 ID。

   ```
   SELECT VALUE h.metadata
   FROM history(VehicleRegistration) AS h
   WHERE h.metadata.id = 'ADR2LQq48kB9neZDupQrMm' --replace with your id
   ```

    输出应类似于以下内容。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/qldb/latest/developerguide/getting-started-step-5.html)

   这些元数据字段提供了有关每项何时修改以及由哪个事务修改的详细信息。从这些数据中，您可看到以下内容：
   + 该文档由系统分配的`id`唯一标识：`ADR2LQq48kB9neZDupQrMm`。这是以 Base62 编码的字符串表示的通用唯一识别码（UUID）。
   + `txTime` 显示文档的初始修订版（版本`0`）是在 `2019-05-23T19:20:360d-3Z` 创建的。
   + 每个后续事务会创建包含相同文档 `id` 和递增版本号的新修订版，以及更新的 `txId`和 `txTime`。

要以加密方式验证 `vehicle-registration` 分类账中的文档修订版，请继续[第 6 步：验证分类账中的文档](getting-started-step-6.md)。