summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/dialects/sybase/pysybase.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2010-03-14 23:03:24 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2010-03-14 23:03:24 +0000
commit127c02747c519c8e487a01c55a1b407c7e00ede1 (patch)
tree93ee91eb460604137066181b5bd9771bf8a4572b /lib/sqlalchemy/dialects/sybase/pysybase.py
parent39fd3442e306f9c2981c347ab2487921f3948a61 (diff)
downloadsqlalchemy-127c02747c519c8e487a01c55a1b407c7e00ede1.tar.gz
- many incantations to get the tests to run reasonably
- executemany() for some reason uses some tiny buffer, overriding it - we need to use the IDENTITY_INSERT thing
Diffstat (limited to 'lib/sqlalchemy/dialects/sybase/pysybase.py')
-rw-r--r--lib/sqlalchemy/dialects/sybase/pysybase.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/sqlalchemy/dialects/sybase/pysybase.py b/lib/sqlalchemy/dialects/sybase/pysybase.py
index e58c6d986..195407384 100644
--- a/lib/sqlalchemy/dialects/sybase/pysybase.py
+++ b/lib/sqlalchemy/dialects/sybase/pysybase.py
@@ -21,6 +21,8 @@ from sqlalchemy.dialects.sybase.base import SybaseDialect, \
class SybaseExecutionContext_pysybase(SybaseExecutionContext):
def pre_exec(self):
+ SybaseExecutionContext.pre_exec(self)
+
for param in self.parameters:
for key in list(param):
param["@" + key] = param[key]
@@ -58,6 +60,12 @@ class SybaseDialect_pysybase(SybaseDialect):
return ([opts.pop('host')], opts)
+ def do_executemany(self, cursor, statement, parameters, context=None):
+ # calling python-sybase executemany yields:
+ # TypeError: string too long for buffer
+ for param in parameters:
+ cursor.execute(statement, param)
+
def _get_server_version_info(self, connection):
return connection.scalar("select @@version_number")