РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
647 of 711 menu

Метод has_table

Метод has_table класса Inspector проверяет, существует ли таблица с указанным именем в базе данных. Первым параметром метод принимает имя таблицы. Вторым необязательным параметром передаётся имя схемы. Метод возвращает True, если таблица найдена, и False в противном случае.

Синтаксис

Inspector.has_table(table_name, schema=None)

Пример

Давайте создадим движок для базы SQLite в памяти, определим модель и проверим наличие таблицы articles:

from sqlalchemy import create_engine, inspect from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column class Base(DeclarativeBase): pass class Article(Base): __tablename__ = 'articles' id: Mapped[int] = mapped_column(primary_key=True) title: Mapped[str] engine = create_engine('sqlite:///:memory:') Base.metadata.create_all(engine) inspector = inspect(engine) res = inspector.has_table('articles') print(res)

Результат выполнения кода:

True

Пример

Давайте проверим наличие несуществующей таблицы users:

from sqlalchemy import create_engine, inspect from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column class Base(DeclarativeBase): pass class Article(Base): __tablename__ = 'articles' id: Mapped[int] = mapped_column(primary_key=True) title: Mapped[str] engine = create_engine('sqlite:///:memory:') Base.metadata.create_all(engine) inspector = inspect(engine) res = inspector.has_table('users') print(res)

Результат выполнения кода:

False

Пример

Давайте передадим имя схемы вторым параметром для базы SQLite:

from sqlalchemy import create_engine, inspect from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column class Base(DeclarativeBase): pass class Article(Base): __tablename__ = 'articles' id: Mapped[int] = mapped_column(primary_key=True) title: Mapped[str] engine = create_engine('sqlite:///:memory:') Base.metadata.create_all(engine) inspector = inspect(engine) res = inspector.has_table('articles', schema='main') print(res)

Результат выполнения кода:

True

Смотрите также

  • класс Inspector,
    который предоставляет доступ к метаданным базы
  • метод get_table_names,
    который возвращает список имён таблиц
  • метод has_schema,
    который проверяет существование схемы
  • метод get_columns,
    который возвращает информацию о колонках таблицы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить