diff options
author | Jonathan Ellis <jbellis@gmail.com> | 2007-07-29 04:15:14 +0000 |
---|---|---|
committer | Jonathan Ellis <jbellis@gmail.com> | 2007-07-29 04:15:14 +0000 |
commit | a9a1f912fd9445d7496584a256e449ad1fd2a808 (patch) | |
tree | 665b8e937cd5811119f5ce8faa9e844e61190b9e /lib/sqlalchemy/databases/mssql.py | |
parent | c838a981021b83f5690234b1d55513417306ac61 (diff) | |
download | sqlalchemy-a9a1f912fd9445d7496584a256e449ad1fd2a808.tar.gz |
engine.table_names()
tested vs sqlite and pg. mssql should also be ok (uses ischema like pg.) others are best-guess based on has_table code.
Diffstat (limited to 'lib/sqlalchemy/databases/mssql.py')
-rw-r--r-- | lib/sqlalchemy/databases/mssql.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/sqlalchemy/databases/mssql.py b/lib/sqlalchemy/databases/mssql.py index 206291404..52963794c 100644 --- a/lib/sqlalchemy/databases/mssql.py +++ b/lib/sqlalchemy/databases/mssql.py @@ -462,6 +462,10 @@ class MSSQLDialect(ansisql.ANSIDialect): except Exception, e: raise exceptions.SQLError(statement, parameters, e) + def table_names(self, connection, schema): + from sqlalchemy.databases import information_schema as ischema + return ischema.table_names(connection, schema) + def raw_connection(self, connection): """Pull the raw pymmsql connection out--sensative to "pool.ConnectionFairy" and pymssql.pymssqlCnx Classes""" try: @@ -495,6 +499,10 @@ class MSSQLDialect(ansisql.ANSIDialect): row = c.fetchone() return row is not None + def table_names(self, connection): + sql = "SELECT tablename FROM pg_tables WHERE schemaname = 'public'" + return [row[0] for row in connection.execute(s)] + def reflecttable(self, connection, table, include_columns): import sqlalchemy.databases.information_schema as ischema |