From 422558bc5d58557a758b56f4d592d08dd6f86309 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Fri, 15 Dec 2006 01:07:05 +0000 Subject: fix to the fix for [ticket:396] plus a unit test --- lib/sqlalchemy/databases/mysql.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'lib/sqlalchemy/databases/mysql.py') diff --git a/lib/sqlalchemy/databases/mysql.py b/lib/sqlalchemy/databases/mysql.py index 19dedd826..a452a696e 100644 --- a/lib/sqlalchemy/databases/mysql.py +++ b/lib/sqlalchemy/databases/mysql.py @@ -299,9 +299,11 @@ class MySQLDialect(ansisql.ANSIDialect): def preparer(self): return MySQLIdentifierPreparer(self) - def do_executemany(self, cursor, statement, parameters, **kwargs): + def do_executemany(self, cursor, statement, parameters, context=None, **kwargs): try: - cursor.executemany(statement, parameters) + rowcount = cursor.executemany(statement, parameters) + if context is not None: + context._rowcount = rowcount except mysql.OperationalError, o: if o.args[0] == 2006 or o.args[0] == 2014: cursor.invalidate() @@ -316,7 +318,7 @@ class MySQLDialect(ansisql.ANSIDialect): def do_rollback(self, connection): - # some versions of MySQL just dont support rollback() at all.... + # MySQL without InnoDB doesnt support rollback() try: connection.rollback() except: -- cgit v1.2.1