我希望有人可以帮助我使用Dynamo CLI语法。
我无法从CLI创建全局二级索引。
我的脚本在索引按预期工作之前:
aws dynamodb create-table \
--table-name a.b.c \
--attribute-definitions \
AttributeName=TransactionID,AttributeType=S \
--key-schema \
AttributeName=TransactionID,KeyType=HASH \
--provisioned-throughput\
ReadCapacityUnits=5,WriteCapacityUnits=5 \
--endpoint-url $DATABASE_ENDPOINT_URL
当我添加索引时,出现错误:
aws dynamodb create-table \
--table-name a.b.c \
--attribute-definitions \
AttributeName=TransactionID,AttributeType=S \
AttributeName=BatchID,AttributeType=S \
AttributeName=TransactionStatus,AttributeType=S \
--key-schema \
AttributeName=TransactionID,KeyType=HASH \
--global-secondary-indexes IndexName=a.b.indexName,\
KeySchema=["{AttributeName=BatchID,KeyType=HASH}","{AttributeName=TransactionStatus,KeyType=RANGE}"],\
Projection="{ProjectionType=KEYS_ONLY}",\
ProvisionedThroughput="{ReadCapacityUnits=5,WriteCapacityUnits=5}"\
--provisioned-throughput\
ReadCapacityUnits=5,WriteCapacityUnits=5 \
--endpoint-url $DATABASE_ENDPOINT_URL
我收到的错误是:
Error parsing parameter '--global-secondary-indexes': Expected: '<second>', received: '<none>' for input: IndexName=a.b.indexName,
这似乎与示例相符。我也试过使用基于其他问题的一些例子的文件,但也没有运气。
答案 0 :(得分:4)
将所有内容放在一行上修复它。
这有效:
public List<Employee> findBy
FirstName
AndLastName
AndAgeBetween
AndBirthdayBefore
(String firstName, String lastName, Integer minAge, Integer maxAge, Date maxBirthday);