Skip to content

abstract class Athena::ORM::Schema::AbstractSchemaManager
inherits Reference #

Inspects a database's schema according to the dialect of its platform.

Each platform provides its own, see AORM::Connection#create_schema_manager:

em.connection.create_schema_manager.table_exists? "users" # => true

Todo

Only listing tables is supported so far.

Direct known subclasses

Athena::ORM::Schema::MySQLSchemaManager Athena::ORM::Schema::PostgresSchemaManager Athena::ORM::Schema::SQLiteSchemaManager

Constructors#

Methods#

#introspect_table_names : Array(String)#

Returns the names of the database's tables. A table outside the current schema is named schema.table.

View source

#table_exists?(name : String) : Bool#

Returns true if the table named name exists.

View source

#tables_exist?(names : Enumerable(String)) : Bool#

Returns true if all the tables named names exist. Names are compared case-insensitively, and a table outside the current schema is named schema.table.

View source

#tables_exist?(*names : String) : Bool#

Returns true if all the tables named names exist. Names are compared case-insensitively, and a table outside the current schema is named schema.table.

View source