diff --git a/pandas/io/sql.py b/pandas/io/sql.py index 437e279e909790..ac400d4ce272f1 100644 --- a/pandas/io/sql.py +++ b/pandas/io/sql.py @@ -613,7 +613,10 @@ def insert_data(self): def _execute_insert(self, conn, keys, data_iter): data = [{k: v for k, v in zip(keys, row)} for row in data_iter] - conn.execute(self.insert_statement(), data) + if conn.dialect.supports_multivalues_insert: + conn.execute(self.insert_statement().values(data)) + else: + conn.execute(self.insert_statement(), data) def insert(self, chunksize=None): keys, data_list = self.insert_data()