Python でのexecutemanyを使用した効率的なMySQLの辞書リストの挿入
問題:
スクレイピング時Web テーブルから MySQL データベースにデータを転送する場合、個々の行の挿入を伴う非効率的なアプローチが採用されています。目標は、executemany を使用してこのプロセスを最適化することです。
解決策:
executemany メソッドを使用すると、複数行のデータをデータベース テーブルに一度に挿入できます。この場合、データはディクショナリのリストとして構造化されており、それぞれがテーブルの行を表します。
元のコードに示されているように、ディクショナリの値に個別にアクセスする代わりに、データを追加する必要があります。
itemBank.append(( tempRow2['Item_Name'], tempRow1['Item_Price'], tempRow3['Item_In_Stock'], tempRow4['Item_Max'], getTimeExtra )) #append data
executemany メソッドを次のクエリで使用できます。
q = """ insert ignore into TABLE1 ( Item_Name, Item_Price, Item_In_Stock, Item_Max, Observation_Date ) values (%s,%s,%s,%s,%s) """
個々の行の挿入をexecutemany メソッドに置き換えると、大幅に改善されます。データベース挿入プロセスの効率。
以上がPython で「executemany」を使用して MySQL の辞書リストの挿入を最適化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。