ホームページ  >  記事  >  バックエンド開発  >  Psycopg2 を使用して PostgreSQL データベースに複数の行を効率的に挿入するにはどうすればよいですか?

Psycopg2 を使用して PostgreSQL データベースに複数の行を効率的に挿入するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-18 09:07:02328ブラウズ

How Can I Efficiently Insert Multiple Rows into a PostgreSQL Database Using Psycopg2?

Psycopg2 を使用した複数の行の効率的な挿入

大規模なデータセットを扱う場合、効率的な方法でデータベースにデータを挿入することが重要になります。 Psycopg2 は、単一のクエリを使用して一括挿入を実行する便利な方法を提供します。

1 つのクエリ ステートメントで複数の行を挿入するには、次の簡単な方法を使用できます。

import psycopg2

# Connect to the database
connection = psycopg2.connect(...)

# Prepare the cursor
cursor = connection.cursor()

# Create the query template
query = "INSERT INTO t (a, b) VALUES (%s, %s)"

# Prepare the data to insert
data = [(1, 2), (3, 4), (5, 6)]

# Execute the query using Psycopg2's "executemany" method
cursor.executemany(query, data)

# Commit the changes to the database
connection.commit()

executemany()このメソッドは、クエリ テンプレートと、挿入される値を含むタプルのリストという 2 つの引数を取ります。各タプルは 1 行のデータに対応します。

この方法を利用すると、単一のクエリでデータベースに複数の行を挿入でき、データベースへの往復回数が大幅に削減され、パフォーマンスが向上します。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。