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

Метод detach класса Connection

Метод detach класса Connection открепляет текущее соединение от пула соединений. После вызова этого метода соединение больше не управляется пулом и не будет возвращено в него при закрытии. Метод не принимает параметров и не возвращает значения.

Это бывает полезно, когда нужно передать соединение во внешнюю систему или продолжить работу с ним после того, как контекстный менеджер завершил свою работу.

Синтаксис

Connection.detach()

Пример

Давайте создадим соединение и открепим его от пула:

from sqlalchemy import create_engine, text engine = create_engine('sqlite:///:memory:') conn = engine.connect() conn.detach() print(conn.closed) conn.close()

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

"False"

Пример

Давайте выполним запрос после открепления соединения:

from sqlalchemy import create_engine, text engine = create_engine('sqlite:///:memory:') conn = engine.connect() conn.execute(text('CREATE TABLE articles (id INTEGER, title TEXT)')) conn.execute(text("INSERT INTO articles (id, title) VALUES (1, 'article')")) conn.detach() res = conn.execute(text('SELECT title FROM articles')) print(res.fetchall()) conn.close()

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

[('article',)]

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

  • класс Connection,
    который представляет соединение с базой данных
  • метод close,
    который закрывает соединение
  • атрибут closed,
    который показывает, закрыто ли соединение
  • метод invalidate,
    который помечает соединение как недействительное
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить