>데이터 베이스 >MySQL 튜토리얼 >Python의 Execmany를 사용하여 MySQL 데이터베이스에 사전 목록을 효율적으로 삽입하는 방법은 무엇입니까?

Python의 Execmany를 사용하여 MySQL 데이터베이스에 사전 목록을 효율적으로 삽입하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-07 22:25:03863검색

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)           
    """

마지막으로 excutemany 메소드를 사용하여 튜플 목록(itemBank)을 매개변수로 하여 쿼리를 실행합니다.

try:
    x.executemany(q, itemBank)
    conn.commit()
except:
    conn.rollback()

이 방법을 사용하면 쿼리 수를 크게 줄일 수 있습니다. SQL 쿼리가 실행되어 데이터 삽입 프로세스의 효율성이 향상됩니다.

위 내용은 Python의 Execmany를 사용하여 MySQL 데이터베이스에 사전 목록을 효율적으로 삽입하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.