]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
rename jdbc suffix to zxjdbc, add ReturningParam.__ne__
authorPhilip Jenvey <pjenvey@underboss.org>
Sun, 30 Aug 2009 20:18:34 +0000 (20:18 +0000)
committerPhilip Jenvey <pjenvey@underboss.org>
Sun, 30 Aug 2009 20:18:34 +0000 (20:18 +0000)
lib/sqlalchemy/dialects/mysql/zxjdbc.py
lib/sqlalchemy/dialects/oracle/zxjdbc.py
lib/sqlalchemy/dialects/postgresql/zxjdbc.py

index fddbfaabd34bd972d8dc0552c9208c0c95f7c6d3..bf1267aed1d7a121defdb25666f19149d00feead 100644 (file)
@@ -22,7 +22,7 @@ from sqlalchemy import types as sqltypes, util
 from sqlalchemy.connectors.zxJDBC import ZxJDBCConnector
 from sqlalchemy.dialects.mysql.base import BIT, MySQLDialect, MySQLExecutionContext
 
-class _JDBCBit(BIT):
+class _ZxJDBCBit(BIT):
     def result_processor(self, dialect):
         """Converts boolean or byte arrays from MySQL Connector/J to longs."""
         def process(value):
@@ -38,7 +38,7 @@ class _JDBCBit(BIT):
         return process
 
 
-class MySQL_jdbcExecutionContext(MySQLExecutionContext):
+class MySQL_zxjdbcExecutionContext(MySQLExecutionContext):
     def get_lastrowid(self):
         cursor = self.create_cursor()
         cursor.execute("SELECT LAST_INSERT_ID()")
@@ -47,17 +47,17 @@ class MySQL_jdbcExecutionContext(MySQLExecutionContext):
         return lastrowid
 
 
-class MySQL_jdbc(ZxJDBCConnector, MySQLDialect):
-    execution_ctx_cls = MySQL_jdbcExecutionContext
-
+class MySQL_zxjdbc(ZxJDBCConnector, MySQLDialect):
     jdbc_db_name = 'mysql'
     jdbc_driver_name = 'com.mysql.jdbc.Driver'
 
+    execution_ctx_cls = MySQL_zxjdbcExecutionContext
+
     colspecs = util.update_copy(
         MySQLDialect.colspecs,
         {
             sqltypes.Time: sqltypes.Time,
-            BIT: _JDBCBit
+            BIT: _ZxJDBCBit
         }
     )
 
@@ -101,4 +101,4 @@ class MySQL_jdbc(ZxJDBCConnector, MySQLDialect):
                 version.append(n)
         return tuple(version)
 
-dialect = MySQL_jdbc
+dialect = MySQL_zxjdbc
index b42629feb384d4eb093e8defcc81106291a76f24..82aac080e12cc83c819e28bdcb34a14b4451f90e 100644 (file)
@@ -18,7 +18,7 @@ from sqlalchemy.sql import expression
 
 SQLException = zxJDBC = None
 
-class _JDBCDate(sqltypes.Date):
+class _ZxJDBCDate(sqltypes.Date):
 
     def result_processor(self, dialect):
         def process(value):
@@ -29,7 +29,7 @@ class _JDBCDate(sqltypes.Date):
         return process
 
 
-class _JDBCNumeric(sqltypes.Numeric):
+class _ZxJDBCNumeric(sqltypes.Numeric):
 
     def result_processor(self, dialect):
         if self.asdecimal:
@@ -47,7 +47,7 @@ class _JDBCNumeric(sqltypes.Numeric):
         return process
 
 
-class Oracle_jdbcCompiler(OracleCompiler):
+class Oracle_zxjdbcCompiler(OracleCompiler):
 
     def returning_clause(self, stmt, returning_cols):
         columnlist = list(expression._select_iterables(returning_cols))
@@ -71,7 +71,7 @@ class Oracle_jdbcCompiler(OracleCompiler):
         return 'RETURNING ' + ', '.join(columns) +  " INTO " + ", ".join(binds)
 
 
-class Oracle_jdbcExecutionContext(default.DefaultExecutionContext):
+class Oracle_zxjdbcExecutionContext(default.DefaultExecutionContext):
 
     def pre_exec(self):
         if hasattr(self.compiled, 'returning_parameters'):
@@ -149,28 +149,34 @@ class ReturningParam(object):
             return self.type == other.type
         return NotImplemented
 
+    def __ne__(self, other):
+        if isinstance(other, ReturningParam):
+            return self.type != other.type
+        return NotImplemented
+
     def __repr__(self):
         kls = self.__class__
         return '<%s.%s object at 0x%x type=%s>' % (kls.__module__, kls.__name__, id(self),
                                                    self.type)
 
 
-class Oracle_jdbc(ZxJDBCConnector, OracleDialect):
-    statement_compiler = Oracle_jdbcCompiler
-    execution_ctx_cls = Oracle_jdbcExecutionContext
+class Oracle_zxjdbc(ZxJDBCConnector, OracleDialect):
     jdbc_db_name = 'oracle'
     jdbc_driver_name = 'oracle.jdbc.OracleDriver'
 
+    statement_compiler = Oracle_zxjdbcCompiler
+    execution_ctx_cls = Oracle_zxjdbcExecutionContext
+
     colspecs = util.update_copy(
         OracleDialect.colspecs,
         {
-            sqltypes.Date : _JDBCDate,
-            sqltypes.Numeric: _JDBCNumeric
+            sqltypes.Date : _ZxJDBCDate,
+            sqltypes.Numeric: _ZxJDBCNumeric
         }
     )
 
     def __init__(self, *args, **kwargs):
-        super(Oracle_jdbc, self).__init__(*args, **kwargs)
+        super(Oracle_zxjdbc, self).__init__(*args, **kwargs)
         global SQLException, zxJDBC
         from java.sql import SQLException
         from com.ziclix.python.sql import zxJDBC
@@ -189,7 +195,7 @@ class Oracle_jdbc(ZxJDBCConnector, OracleDialect):
         self.DataHandler = OracleReturningDataHandler
 
     def initialize(self, connection):
-        super(Oracle_jdbc, self).initialize(connection)
+        super(Oracle_zxjdbc, self).initialize(connection)
         self.implicit_returning = connection.connection.driverversion >= '10.2'
 
     def _create_jdbc_url(self, url):
@@ -199,4 +205,4 @@ class Oracle_jdbc(ZxJDBCConnector, OracleDialect):
         version = re.search(r'Release ([\d\.]+)', connection.connection.dbversion).group(1)
         return tuple(int(x) for x in version.split('.'))
 
-dialect = Oracle_jdbc
+dialect = Oracle_zxjdbc
index 7c540e46b2b4304cb18eddd1e50f9602ea24725e..02cce4504cc49b87771dc0f80cff65bbdc2b69b5 100644 (file)
@@ -9,11 +9,11 @@ The official Postgresql JDBC driver is at http://jdbc.postgresql.org/.
 from sqlalchemy.connectors.zxJDBC import ZxJDBCConnector
 from sqlalchemy.dialects.postgresql.base import PGDialect
 
-class PostgreSQL_jdbc(ZxJDBCConnector, PGDialect):
+class PostgreSQL_zxjdbc(ZxJDBCConnector, PGDialect):
     jdbc_db_name = 'postgresql'
     jdbc_driver_name = 'org.postgresql.Driver'
 
     def _get_server_version_info(self, connection):
         return tuple(int(x) for x in connection.connection.dbversion.split('.'))
 
-dialect = PostgreSQL_jdbc
+dialect = PostgreSQL_zxjdbc