diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2009-08-06 21:11:27 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2009-08-06 21:11:27 +0000 |
commit | 8fc5005dfe3eb66a46470ad8a8c7b95fc4d6bdca (patch) | |
tree | ae9e27d12c9fbf8297bb90469509e1cb6a206242 /lib/sqlalchemy/dialects/oracle/zxjdbc.py | |
parent | 7638aa7f242c6ea3d743aa9100e32be2052546a6 (diff) | |
download | sqlalchemy-8fc5005dfe3eb66a46470ad8a8c7b95fc4d6bdca.tar.gz |
merge 0.6 series to trunk.
Diffstat (limited to 'lib/sqlalchemy/dialects/oracle/zxjdbc.py')
-rw-r--r-- | lib/sqlalchemy/dialects/oracle/zxjdbc.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/lib/sqlalchemy/dialects/oracle/zxjdbc.py b/lib/sqlalchemy/dialects/oracle/zxjdbc.py new file mode 100644 index 000000000..a0ad088b2 --- /dev/null +++ b/lib/sqlalchemy/dialects/oracle/zxjdbc.py @@ -0,0 +1,24 @@ +"""Support for the Oracle database via the zxjdbc JDBC connector.""" +import re + +from sqlalchemy.connectors.zxJDBC import ZxJDBCConnector +from sqlalchemy.dialects.oracle.base import OracleDialect + +class Oracle_jdbc(ZxJDBCConnector, OracleDialect): + + jdbc_db_name = 'oracle' + jdbc_driver_name = 'oracle.jdbc.driver.OracleDriver' + + def create_connect_args(self, url): + hostname = url.host + port = url.port or '1521' + dbname = url.database + jdbc_url = 'jdbc:oracle:thin:@%s:%s:%s' % (hostname, port, dbname) + return [[jdbc_url, url.username, url.password, self.jdbc_driver_name], + self._driver_kwargs()] + + def _get_server_version_info(self, connection): + version = re.search(r'Release ([\d\.]+)', connection.connection.dbversion).group(1) + return tuple(int(x) for x in version.split('.')) + +dialect = Oracle_jdbc |