supports_default_values = True
supports_empty_insert = False
+ supports_foreign_tables = True
supports_multivalues_insert = True
default_paramstyle = 'pyformat'
ischema_names = ischema_names
default_paramstyle = 'named'
supports_default_values = False
supports_empty_insert = True
+ supports_foreign_tables = False
supports_multivalues_insert = False
server_version_info = None
raise NotImplementedError()
- def get_foreign_tables(self, connection, view_name, schema=None, **kw):
- """Return a list of foreign table names for `schema`."""
+ def get_foreign_table_names(self, connection, schema=None, **kw):
+ """Return a list of foreign table names for `schema`.
"""
raise NotImplementedError()
return exclusions.closed()
+ @property
+ def foreign_tables(self):
+ """target platform supports FOREIGN TABLEs."""
+
+ return exclusions.only_if(
+ lambda config: config.db.dialect.supports_foreign_tables,
+ "%(database)s %(does_support)s 'FOREIGN TABLEs'"
+ )
+
@property
def schemas(self):
"""Target database must support external schemas, and have one
"""
return self.views
+ @property
+ def foreign_table_reflection(self):
+ """target database must support inspection of the full CREATE FOREIGN TABLE definition.
+ """
+ return self.foreign_tables
+
@property
def schema_reflection(self):
return self.schemas