diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2007-07-27 04:08:53 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2007-07-27 04:08:53 +0000 |
commit | ed4fc64bb0ac61c27bc4af32962fb129e74a36bf (patch) | |
tree | c1cf2fb7b1cafced82a8898e23d2a0bf5ced8526 /lib/sqlalchemy/databases/information_schema.py | |
parent | 3a8e235af64e36b3b711df1f069d32359fe6c967 (diff) | |
download | sqlalchemy-ed4fc64bb0ac61c27bc4af32962fb129e74a36bf.tar.gz |
merging 0.4 branch to trunk. see CHANGES for details. 0.3 moves to maintenance branch in branches/rel_0_3.
Diffstat (limited to 'lib/sqlalchemy/databases/information_schema.py')
-rw-r--r-- | lib/sqlalchemy/databases/information_schema.py | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/lib/sqlalchemy/databases/information_schema.py b/lib/sqlalchemy/databases/information_schema.py index 81c44dcaa..93f47de15 100644 --- a/lib/sqlalchemy/databases/information_schema.py +++ b/lib/sqlalchemy/databases/information_schema.py @@ -1,4 +1,6 @@ -from sqlalchemy import sql, schema, exceptions, select, MetaData, Table, Column, String, Integer +import sqlalchemy.sql as sql +import sqlalchemy.exceptions as exceptions +from sqlalchemy import select, MetaData, Table, Column, String, Integer from sqlalchemy.schema import PassiveDefault, ForeignKeyConstraint ischema = MetaData() @@ -96,8 +98,7 @@ class ISchema(object): return self.cache[name] -def reflecttable(connection, table, ischema_names): - +def reflecttable(connection, table, include_columns, ischema_names): key_constraints = pg_key_constraints if table.schema is not None: @@ -128,7 +129,9 @@ def reflecttable(connection, table, ischema_names): row[columns.c.numeric_scale], row[columns.c.column_default] ) - + if include_columns and name not in include_columns: + continue + args = [] for a in (charlen, numericprec, numericscale): if a is not None: @@ -139,7 +142,7 @@ def reflecttable(connection, table, ischema_names): colargs= [] if default is not None: colargs.append(PassiveDefault(sql.text(default))) - table.append_column(schema.Column(name, coltype, nullable=nullable, *colargs)) + table.append_column(Column(name, coltype, nullable=nullable, *colargs)) if not found_table: raise exceptions.NoSuchTableError(table.name) |