sql >> データベース >  >> RDS >> Mysql

SQLAlchemyでbulk_update_mappingsを使用して、異なる値で複数の行を更新します

    アプローチは使用法の点で正しいです。私が変更するのは以下のようなものだけです

    mappings = []
    i = 0
    
    for b, foo_x in session.query(Bar, Foo.x).join(Foo, Foo.id==Bar.foo_id):
        info = {'id':b.id, 'x': foo_x}
        mappings.append(info)
        i = i + 1
        if i % 10000 == 0:
            session.bulk_update_mappings(Bar, mappings)
            session.flush()
            session.commit()
            mappings[:] = []
    
    session.bulk_update_mappings(Bar, mappings)
    

    これにより、メモリに大量のデータがぶら下がったり、一度にDBに大きな挿入を行ったりしないようになります




    1. SQL Serverの.bakファイルをMySQLにインポートする方法は?

    2. mysqlソート文字列番号

    3. £の代わりに�を表示

    4. OGG-01224アドレスはすでに使用されています