While implementing a custom DB dialect I found an asymmetry in the
implementation of Engine.table_names() and Engine.has_table(). I do not
understand if this is intended or can be considered a bug.
In the implementation of table_names() the optional parameter schema is
checked for None and if None is replaced by self.dialect.
default_schema_name.
This is not the case in the implementation of has_table().
In some DBs tables with the same name can exist in different schemas. Given
the current Engine Implementation situations seem possible where:
engine.has_table('foo') != 'foo' ni engine.table_names()
if the dialect comes with a default_schema_name, table_names() is called
without schema, and the table 'foo' exists in the non-default schema.
Is this intended behavior?
--
You received this message because you are subscribed to the Google Groups
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sqlalchemy?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.