diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-07-22 06:21:58 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-07-22 06:21:58 +0000 |
commit | 946984d812dcade87a6cbefbb896e4a17af8170e (patch) | |
tree | df8794e80f557baedac9fbdb5720f12b6e470c2a /lib/sqlalchemy/databases/mysql.py | |
parent | f65fdce01daec6c49359f04d90669919d836e3b5 (diff) | |
download | sqlalchemy-946984d812dcade87a6cbefbb896e4a17af8170e.tar.gz |
fixed reflection of foreign keys to autoload the referenced table
if it was not loaded already, affected postgres, mysql, oracle.
fixes the latest in [ticket:105]
Diffstat (limited to 'lib/sqlalchemy/databases/mysql.py')
-rw-r--r-- | lib/sqlalchemy/databases/mysql.py | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/sqlalchemy/databases/mysql.py b/lib/sqlalchemy/databases/mysql.py index 1d587ff7c..3f3e8d148 100644 --- a/lib/sqlalchemy/databases/mysql.py +++ b/lib/sqlalchemy/databases/mysql.py @@ -370,6 +370,7 @@ class MySQLDialect(ansisql.ANSIDialect): for match in re.finditer(fkpat, desc): columns = re.findall(r'`(.+?)`', match.group('columns')) refcols = [match.group('reftable') + "." + x for x in re.findall(r'`(.+?)`', match.group('refcols'))] + schema.Table(match.group('reftable'), table.metadata, autoload=True, autoload_with=connection) constraint = schema.ForeignKeyConstraint(columns, refcols, name=match.group('name')) table.append_item(constraint) |