cursor.execute('SELECT @@tx_isolation')
val = cursor.fetchone()[0]
cursor.close()
- # Py3K
- #if isinstance(val, bytes):
- # val = val.decode()
- # Py2K
- # end Py2K
+ if util.py3k and isinstance(val, bytes):
+ val = val.decode()
return val.upper().replace("-", " ")
def do_commit(self, dbapi_connection):
"""
from .mysqldb import MySQLDialect_mysqldb
-
+from ...util import py3k
class MySQLDialect_pymysql(MySQLDialect_mysqldb):
driver = 'pymysql'
description_encoding = None
- # Py3K
- #supports_unicode_statements = True
- # Py2K
- # end Py2K
+ if py3k:
+ supports_unicode_statements = True
@classmethod
def dbapi(cls):
return __import__('pymysql')
- # Py3K
- #def _extract_error_code(self, exception):
- # if isinstance(exception.args[0], Exception):
- # exception = exception.args[0]
- # return exception.args[0]
- # Py2K
- # end Py2K
+ if py3k:
+ def _extract_error_code(self, exception):
+ if isinstance(exception.args[0], Exception):
+ exception = exception.args[0]
+ return exception.args[0]
dialect = MySQLDialect_pymysql
# coding: utf-8
from sqlalchemy.testing import eq_, assert_raises, assert_raises_message
import decimal
-import datetime, os, re
+import datetime
+import os
from sqlalchemy import *
-from sqlalchemy import exc, types, util, schema, dialects
+from sqlalchemy import exc, types, util, dialects
for name in dialects.__all__:
__import__("sqlalchemy.dialects.%s" % name)
from sqlalchemy.sql import operators, column, table
-from sqlalchemy.testing import eq_
-import sqlalchemy.engine.url as url
from sqlalchemy.engine import default
from sqlalchemy.testing.schema import Table, Column
from sqlalchemy import testing
if (testing.against('mssql+pyodbc') and
not testing.db.dialect.freetds) \
- or testing.against('mssql+mxodbc'):
+ or testing.against('mssql+mxodbc'):
eq_(
testing.db.dialect.returns_unicode_strings,
'conditional'
('charset' in testing.db.url.query)
)
- elif testing.against('mysql+cymysql'):
+ elif testing.against('mysql+cymysql', 'mysql+pymssql'):
eq_(
testing.db.dialect.returns_unicode_strings,
- # Py3K
- #True
- # Py2K
- False
- # end Py2K
+ True if util.py3k else False
)
- elif testing.against('mysql+pymysql'):
- eq_(
- testing.db.dialect.returns_unicode_strings,
- # Py3K
- #True
- # Py2K
- False
- # end Py2K
- )
else:
expected = (testing.db.name, testing.db.driver) in \