是否需要Amazon SimpleDB中的ItemName,因为我似乎无法删除它。我是否可以创建另一个可用作“主键”的属性。
亲切的问候
答案 0 :(得分:2)
是的,项目名称是必需的,它是项目的唯一唯一标识符,它用于所有项目检索和更新操作(select
操作除外)。
我有点难以进入更多细节,不知道为什么你不想使用项目名称但是当你需要提供一个项目名称时,你可以随意填充你想要的任何值。 。所以你可以在那里转储一个GUID。
由于所有属性都会自动编入索引,因此您可以根据所需的任何属性自由使用select
操作来检索项目。这是一个
select * from ExampleDomain where ExampleAttribute = 'foo' limit 1
如果您只是在寻找itemName(可能在后续的删除操作中使用)。
select itemName() from ExampleDomain where ExampleAttribute = 'foo' limit 1
有关select
操作的详细信息,请参阅Using Select to Create Amazon SimpleDB Queries。
我应该注意,使用select
而不是GetAttributes
会有点贵,因为它通常比简单GetAttributes
更高BoxUsage但是对于小型工作负载而言没关系。使用您自己的使用模式进行衡量。