diff options
author | Jason Kirtland <jek@discorporate.us> | 2007-08-29 22:27:45 +0000 |
---|---|---|
committer | Jason Kirtland <jek@discorporate.us> | 2007-08-29 22:27:45 +0000 |
commit | 83d05aa5aff0b27027fb10986390d898a3153eb2 (patch) | |
tree | 2f4b30d080442e0ec54d684262614717141a38fa /lib/sqlalchemy/databases/access.py | |
parent | cdde69e7bdef6d9a8a074d1051e099e217d33acf (diff) | |
download | sqlalchemy-83d05aa5aff0b27027fb10986390d898a3153eb2.tar.gz |
engine.url cleanups [ticket:742]
- translate_connect_args can now take kw args or the classic list
- in-tree dialects updated to supply their overrides as keywords
- tweaked url parsing in the spirit of the #742 patch, more or less
Diffstat (limited to 'lib/sqlalchemy/databases/access.py')
-rw-r--r-- | lib/sqlalchemy/databases/access.py | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/lib/sqlalchemy/databases/access.py b/lib/sqlalchemy/databases/access.py index 2d36049ed..7552b897d 100644 --- a/lib/sqlalchemy/databases/access.py +++ b/lib/sqlalchemy/databases/access.py @@ -202,14 +202,14 @@ class AccessDialect(default.DefaultDialect): dbapi = classmethod(dbapi) def create_connect_args(self, url): - opts = url.translate_connect_args(['host', 'database', 'username', 'password', 'port']) + opts = url.translate_connect_args() connectors = ["Driver={Microsoft Access Driver (*.mdb)}"] connectors.append("Dbq=%s" % opts["database"]) - user = opts.get("user") + user = opts.get("username", None) if user: connectors.append("UID=%s" % user) connectors.append("PWD=%s" % opts.get("password", "")) - return [[";".join (connectors)], {}] + return [[";".join(connectors)], {}] def create_execution_context(self, *args, **kwargs): return AccessExecutionContext(self, *args, **kwargs) @@ -273,8 +273,7 @@ class AccessDialect(default.DefaultDialect): # A fresh DAO connection is opened for each reflection # This is necessary, so we get the latest updates - opts = connection.engine.url.translate_connect_args(['host', 'database', 'username', 'password', 'port']) - dtbs = daoEngine.OpenDatabase(opts['database']) + dtbs = daoEngine.OpenDatabase(connection.engine.url.database) try: for tbl in dtbs.TableDefs: @@ -340,8 +339,7 @@ class AccessDialect(default.DefaultDialect): def table_names(self, connection, schema): # A fresh DAO connection is opened for each reflection # This is necessary, so we get the latest updates - opts = connection.engine.url.translate_connect_args(['host', 'database', 'username', 'password', 'port']) - dtbs = daoEngine.OpenDatabase(opts['database']) + dtbs = daoEngine.OpenDatabase(connection.engine.url.database) names = [t.Name for t in dtbs.TableDefs if t.Name[:4] != "MSys" and t.Name[:4] <> "~TMP"] dtbs.Close() |