首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在没有for循环的情况下从DynamoDB中删除所有数据?

如何在没有for循环的情况下从DynamoDB中删除所有数据?
EN

Stack Overflow用户
提问于 2018-01-13 15:14:07
回答 2查看 431关注 0票数 2

假设我在DynamoDB中有100个数据,那么要删除我必须执行for循环的所有数据,.So有没有办法删除所有没有for循环的数据?

代码语言:javascript
复制
let dynamoDbObjectMapper = AWSDynamoDBObjectMapper.default()

for var key in 0 ..<100 {

    let itemToDelete: CategoriesDB = CategoriesDB()
    itemToDelete._index = key

    dynamoDbObjectMapper.remove(itemToDelete, completionHandler:              
    {(error: Error?) -> Void in
        if let error = error {
            print(" Amazon DynamoDB Save Error: \(error)")
            return
        }
        print("A Category was deleted.")
    })
}
EN

回答 2

Stack Overflow用户

发布于 2018-01-13 20:28:11

如果您想删除DynamoDB表中的所有数据,最好只删除该表,然后重新创建它,因为这不会占用写容量单位。

票数 1
EN

Stack Overflow用户

发布于 2018-01-13 19:49:40

暂时忽略swift SDK,DynamoDB有从表中删除单个项的DeleteItem方法,但它也有一个批处理方法。

Quote

除了DeleteItem之外,亚马逊DynamoDB还支持同时删除多个项目的BatchWriteItem操作。

问题是,我看不到通过swift SDK访问BatchWriteItem的方法。即使你可以使用BatchWriteItem,它一次也只能处理25个项目,所以你最终还是要写一个循环。

对不起,这不是一个更完整的答案,但我认为这可能是有用的。据我所知,没有一种简单的(单一的)方法可以做到这一点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48237747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档