Alk*_*lko 5 amazon-qldb partiql
我想在 QLDB 中创建一个唯一的字段。我尝试使用UNIQUE,但得到:
unexpected token found, KEYWORD : unique; Unexpected token following CREATE
Amazon QLDB 不支持所有 PartiQL 操作。
参考CREATE TABLE文档说,
QLDB 支持开放内容并且不强制架构,因此您在创建表时无需定义属性或数据类型。[强调我的]
因此,逻辑结论是 QLDB 不支持UNIQUE对您在表中定义的任何字段进行约束。
QLDB教程证实了这一点
INSERT 语句创建版本号为零的文档的初始修订版。为了唯一标识每个文档,QLDB 分配一个文档 ID 作为元数据的一部分。
重要的
由于 QLDB 不强制实施架构,因此您可以将同一文档多次插入表中。每个插入语句都会向日志提交一个单独的文档条目,并且 QLDB 会为每个文档分配一个唯一的 ID。
QLDB保证唯一的唯一字段是documentId.
编辑:
您可以强制应用程序的唯一性。就是这样:
SELECT id FROM myTable By id WHERE myUniqueField = ?myUniqueField您只能在空表上创建索引,因此您可能应该抢先为此字段创建索引,而不是等到出现性能问题时才创建,因为 QLDB 正在执行全表扫描。
编辑:
截至2020年9月30日,QLDB支持为非空表添加索引。
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           798 次  |  
        
|   最近记录:  |