欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SQLAlchemy 批量更新 字典散列更新

程序员文章站 2024-03-21 21:48:10
...

现在有个业务需求需要批量更新某些字段 批量更新

db.session.bulk_update_mappings(
        Card, # 当前映射类
        [*max_obj] # 列表里套的是字典打散
    )
    db.session.commit()

注意点 批量更新要的是ID字段 需要注意ID填写

使用需求

class Card(BaseModel):
__tablename__ = "Card"

bank_location = db.Column(db.String(50), comment="")
iccid = db.Column(db.String(50), comment="卡的iccid")


比如上面的这映射关系 

在批量更新的时候我只想链接一次数据库 而不是找到一个条件更新一个

 在于操作xlsx表格 读取里面的数据 然后批量更新与数据库和表格存在的数据。
正常来说的话 可能我也比较笨 我的思路就是数据库 找到一个与表格对应的 就更新一次 
那这样的话只能for 循环里面嵌套查找数据库是否与他相同然后进行更新  所以就是 for一次 链接一次  而我想的就是一次性更新

使用方式

用 zip 封装成字典 

{
	"bank_location":"123",
	"iccid":"123",
	"id":"123"
}

我先循环一下 xlsx 表格其中一列与数据库那个对应 查询一次数据库然后拿出来 拿出来之后 在想办法将数据库这条字段的ID 对应到要更新的字段里进行更新

记录不容易,我不记录在本地笔记就是因为提供大家使用 希望留一个三连

相关标签: Flask