Heim  >  Artikel  >  Datenbank  >  Wie kann ich das MySQL-Einfügen von Wörterbuchlisten mithilfe von „executemany“ in Python optimieren?

Wie kann ich das MySQL-Einfügen von Wörterbuchlisten mithilfe von „executemany“ in Python optimieren?

Barbara Streisand
Barbara StreisandOriginal
2024-11-10 15:10:03858Durchsuche

How Can I Optimize MySQL Insertion of Dictionary Lists Using `executemany` in Python?

Effiziente MySQL-Einfügung von Wörterbuchlisten mithilfe vonexecutemany in Python

Problem:

Beim Scraping Um Daten aus Webtabellen in eine MySQL-Datenbank zu übertragen, wird ein ineffizienter Ansatz verwendet, bei dem einzelne Zeilen eingefügt werden. Das Ziel besteht darin, diesen Prozess mit „executemany“ zu optimieren.

Lösung:

Die Methode „executemany“ ermöglicht das gleichzeitige Einfügen mehrerer Datenzeilen in eine Datenbanktabelle. In diesem Fall sind die Daten als Liste von Wörterbüchern strukturiert, die jeweils eine Zeile der Tabelle darstellen.

Anstatt wie im Originalcode gezeigt einzeln auf die Werte der Wörterbücher zuzugreifen, sollten die Daten angehängt werden zu einer Liste im folgenden Format:

itemBank.append((
    tempRow2['Item_Name'],
    tempRow1['Item_Price'],
    tempRow3['Item_In_Stock'],
    tempRow4['Item_Max'], 
    getTimeExtra
)) #append data

Die Methode „executemany“ kann dann mit der folgenden Abfrage verwendet werden:

q = """ insert ignore into TABLE1 (
        Item_Name, Item_Price, Item_In_Stock, Item_Max, Observation_Date ) 
        values (%s,%s,%s,%s,%s)           
    """

Das Ersetzen der einzelnen Zeileneinfügungen durch die Methode „executemany“ wird eine deutliche Verbesserung bringen die Effizienz des Datenbankeinfügungsprozesses.

Das obige ist der detaillierte Inhalt vonWie kann ich das MySQL-Einfügen von Wörterbuchlisten mithilfe von „executemany“ in Python optimieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn