diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2005-10-22 04:23:05 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2005-10-22 04:23:05 +0000 |
commit | 03e3c0c45666c8eb4230202e80abc534edcb7632 (patch) | |
tree | bd6c55ee269b8eabe3612bbc153f7a498ce38102 /lib/sqlalchemy/engine.py | |
parent | 10b88195ba1bbf47d71d2bcd83f778a7b1137de8 (diff) | |
download | sqlalchemy-03e3c0c45666c8eb4230202e80abc534edcb7632.tar.gz |
Diffstat (limited to 'lib/sqlalchemy/engine.py')
-rw-r--r-- | lib/sqlalchemy/engine.py | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/lib/sqlalchemy/engine.py b/lib/sqlalchemy/engine.py index a36db3885..085c20188 100644 --- a/lib/sqlalchemy/engine.py +++ b/lib/sqlalchemy/engine.py @@ -199,20 +199,28 @@ class SQLEngine(schema.SchemaEngine): self.pre_exec(connection, c, statement, parameters, echo = echo, **kwargs) if isinstance(parameters, list): - c.executemany(statement, parameters) + self._executemany(c, statement, parameters) else: - c.execute(statement, parameters) + self._execute(c, statement, parameters) self.post_exec(connection, c, statement, parameters, echo = echo, **kwargs) - return ResultProxy(c, self.echo, typemap = typemap) - + return ResultProxy(c, self, typemap = typemap) + + def _execute(self, c, statement, parameters): + c.execute(statement, parameters) + self.context.rowcount = c.rowcount + def _executemany(self, c, statement, parameters): + c.executemany(statement, parameters) + self.context.rowcount = c.rowcount + def log(self, msg): self.logger.write(msg + "\n") class ResultProxy: - def __init__(self, cursor, echo = False, typemap = None): + def __init__(self, cursor, engine, typemap = None): self.cursor = cursor - self.echo = echo + self.echo = engine.echo + self.rowcount = engine.context.rowcount metadata = cursor.description self.props = {} i = 0 |