【发布时间】:2020-11-27 14:59:20
【问题描述】:
我想从我的 lex 机器人下订单到 dynamoDB,但是 PutItem 操作每次都会覆盖(如果客户名称已经在表中)。 我从文档中知道,如果主键相同,它将执行此操作。
我的目标是将每个订单放入数据库,以便将来轻松搜索。 我在下面附上了一些截图。任何帮助表示赞赏
def putDynam(orderNum, table_custName, slotKey, slotVal):
client = boto3.resource('dynamodb')
table = client.Table('blah')
input = {'Customer': table_custName, 'OrderNumber':orderNum[0], 'Bun Type': slotVal[5], 'CheeseDecision': slotVal[1], 'Cheese Type': slotVal[0], 'Pickles': slotVal[4], 'SauceDecision': slotVal[3], 'Sauce Type': slotVal[2]}
action = table.put_item(Item=input)
【问题讨论】:
-
什么是主键?每个订单都是独一无二的吗?因为它必须是
-
请贴出代码而不是截图
-
@LLL 所以目前主键是客户名称,我不太明白每个条目的主键如何是唯一的。
-
@LLL 我已经添加了上面的代码。
标签: amazon-web-services aws-lambda amazon-dynamodb boto3