如何在dynamo db中形成复合唯一键

时间:2016-02-11 02:33:18

标签: amazon-dynamodb

我在发电机DB中有一个表,其中包含字段A,B,C,D和E. 主键是A(分区键)和B(排序键)。

我希望将C和D的另一个唯一约束作为复合唯一键。在mysql中我会做这样的事情

ALTER TABLE YourTable
 add CONSTRAINT YourTable_unique UNIQUE (C, D);

我想在dynamo DB中做类似的事情,这样当我创建一个带有已经匹配的复合唯一键(C和D)的新条目时,它不允许我创建该条目。

2 个答案:

答案 0 :(得分:1)

来自documentation

To write an item only if it doesn't already exist,
use PutItem with a conditional expression that uses the 
attribute_not_exists function and the name of the table's 
partition key

你不能在其他键上添加约束然后分区键(你不能在全局二级键上添加约束)

答案 1 :(得分:0)

@Eyal Ch是对的。我在应用程序级别处理它,在保存之前进行扫描:

.modal {
  position: absolute;
}