ホームページ > データベース > mysql チュートリアル > Python のexecutemanyを使用して辞書のリストをMySQLデータベースに効率的に挿入するにはどうすればよいですか?

Python のexecutemanyを使用して辞書のリストをMySQLデータベースに効率的に挿入するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-07 22:25:03
オリジナル
859 人が閲覧しました

How to Efficiently Insert a List of Dictionaries into a MySQL Database Using Python's executemany?

executemany を使用して Python から MySQL に辞書のリストを挿入する

Python では、executemany は複数の行を MySQL に効率的に挿入するための貴重なツールです。 MySQL データベース。次のシナリオを考えてみましょう。 itemBank という名前のディクショナリのリストがあり、各ディクショナリはテーブル内の行のデータを表します。このデータを TABLE1 テーブルに挿入するには、行ごとに個別の SQL クエリを実行するという面倒な方法を現在使用しています。

このプロセスを最適化するために、executemany の使用方法を見てみましょう。最初のステップは、itemBank をタプルのリストに再構築することです。各タプルには、対応する辞書から抽出された、データベースに挿入する値が含まれます。

itemBank = [] 
for row in rows:
    itemBank.append((
        tempRow2['Item_Name'],
        tempRow1['Item_Price'],
        tempRow3['Item_In_Stock'],
        tempRow4['Item_Max'], 
        getTimeExtra
        ))
ログイン後にコピー

次に、値のテーブル列とプレースホルダーを定義する SQL クエリ テンプレート (q) を構築します。

q = """ insert ignore into TABLE1 (
        Item_Name, Item_Price, Item_In_Stock, Item_Max, Observation_Date ) 
        values (%s,%s,%s,%s,%s)           
    """
ログイン後にコピー

最後に、executemany メソッドを使用して、タプルのリスト (itemBank) をパラメータとしてクエリを実行します。

try:
    x.executemany(q, itemBank)
    conn.commit()
except:
    conn.rollback()
ログイン後にコピー

このアプローチにより、 SQL クエリが実行されるため、データ挿入プロセスの効率が向上します。

以上がPython のexecutemanyを使用して辞書のリストをMySQLデータベースに効率的に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート