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