バッチ処理
このpython コネクタは、データソースに書き込むバッチ処理も実行できます。これは、カーソルオブジェクトのexecutemany() メソッドを使用して行います。SQL ステートメント文字列に加えて、値のデータフレームを、SQL ステートメントを実行するための一連のパラメーターとして提供する必要があります。通常の書き込み操作と同様に、このステートメントはプロバイダによって直ちに実行されます。実行後に接続のcommit() メソッドを呼び出さないでください。
Insert
次の例では、テーブルに複数の新しいレコードを追加します。
cur = conn.cursor() cmd = "INSERT INTO \"postgres\".\"public\".Orders (ShipName, ShipCity) VALUES (?, ?)" params = [["Raleigh", "New York"], ["Raleigh", "New York"]] cur.executemany(cmd, params) print("Records affected: ", cur.rowcount)
Update
次の例では、テーブル内の複数の既存のレコードを変更します。
cur = conn.cursor() cmd = "UPDATE \"postgres\".\"public\".Orders SET ShipCity = ? WHERE Id = ?" params = [["New York", "10261"], ["New York", "10261"]] cur.executemany(cmd, params) print("Records affected: ", cur.rowcount)
Delete
次の例では、テーブルから複数の既存のレコードを削除します。
cur = conn.cursor() cmd = "DELETE FROM \"postgres\".\"public\".Orders WHERE Id = ?" params = [["10261"], ["10261"]] cur.executemany(cmd, params) print("Records affected: ", cur.rowcount)