How do I insert a map into DynamoDB table?(如何将地图插入 DynamoDB 表?)
本文介绍了如何将地图插入 DynamoDB 表?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下代码行:
table.put_item( Item={'filename' : key, 'status' : {'M' : iocheckdict }})
iocheckdict 看起来像这样:
{'A': 'One', 'C': 'Three', 'D': 'Four', 'B': 'Two', 'E': 'Five'}
所以,当我运行代码时,我得到了这个错误:
So, when I am running the code, I get this error:
An error occurred (ValidationException) when calling the PutItem operation: One or more parameter values were invalid: Type mismatch for key status expected: S actual: M
即使我提到 M 作为数据的类型,为什么我会得到这个?
Why am I getting this, even though I mentioned M as the type of the data?
PS:我的表中有 2 列 filename 和 status
PS : I have 2 columns filename and status in my table
表的属性定义:
"AttributeDefinitions": [
{
"AttributeName": "filename",
"AttributeType": "S"
},
{
"AttributeName": "status",
"AttributeType": "S"
}
],
我知道status的类型是S,但是我在建表的时候没有找到map类型.我找到的只有 string、binary 和 number.
I understand that the type of status is S, but I haven't found the map type while creating the table. All I found are string, binary and number.
推荐答案
插入dynamodb的更简单方法
Easier way to insert into dynamodb
dynamodb = boto3.resource('dynamodb')
table = dynamodb.Table("table_name")
item={}
item['filename'] = key
item['status'] = {'A': 'One', 'C': 'Three', 'D': 'Four', 'B': 'Two', 'E': 'Five'}
table.put_item(Item=item)
这篇关于如何将地图插入 DynamoDB 表?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:如何将地图插入 DynamoDB 表?
基础教程推荐
猜你喜欢
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
