Psycopg2를 사용하여 효율적으로 여러 행 삽입
Psycopg2는 단일 작업으로 데이터베이스에 여러 행을 삽입하는 작업을 단순화할 수 있는 mogrify 방법을 제공합니다. 질문. 이 접근 방식은 특히 대규모 데이터 세트의 경우 Executionmany 메서드를 사용하는 것보다 더 효율적인 것으로 입증될 수 있습니다.
설명하기 위해 다음 코드 조각은 테이블에 2000개의 행을 삽입하는 방법을 보여줍니다.
args = [(1, 2), (3, 4), (5, 6)] args_str = ','.join(cur.mogrify("(%s,%s)", x) for x in tup) cur.execute("INSERT INTO table VALUES " + args_str)
이것은 메서드는 이 특정 시나리오에서 ExecMany를 사용하는 것보다 훨씬 더 빠른 것으로 입증되었으며, 2분에 비해 10초만 소요되었습니다. psycopg2의 mogrify 메소드는 각 행에 대한 쿼리 문자열을 준비하므로,executemany 메소드에서 요구하는 대로 행 목록을 여러 번 반복할 필요가 없습니다.
위 내용은 Psycopg2\의 `mogrify` 메서드가 어떻게 여러 행 삽입 속도를 높일 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!