将不存在的属性添加到DynamoDb中

2024-04-26 09:55:34 发布

您现在位置:Python中文网/ 问答频道 /正文

如果用户输入了Dynamodb中不存在的属性,则接受该属性并将其存储到Dynamodb中。在

目前,我有'id'和'firstName'作为属性,用户可以通过插入他们的名字来创建,但是如果他们想添加'lastName'属性,dynamodb应该接受'lastName'并存储到数据库中。在

def create(event):
    body = dict(event['body'])
    id = body['id']
    firstName = body['firstName']

    response = table.put_item(
        Item={
            'id': str(id),
            'firstName': firstName,
        },
    )

Tags: 用户eventid数据库属性responsedefcreate
1条回答
网友
1楼 · 发布于 2024-04-26 09:55:34

DynamoDB是一个NoSQL数据库。这是大多数NoSQL数据库的默认特性。这在DynamoDB中也得到了支持。与RDBMS一样,NoSQL数据库没有任何模式。您可以随时添加任何非关键属性。在

对于DynamoDB,在创建表时,它不允许定义任何非键属性。lastName是一个非键属性。在创建新项目时,可以在创建项目(或)后的任何时候将其添加到项目(即记录)。这是NoSQL或DynamoDB数据库的主要优点之一。在

UpdateExpression = 'SET lastName = :lastNameVal',   
ExpressionAttributeValues={':lastNameVal' : 'John'}

Reference link

相关问题 更多 >