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

Метод close

Метод close закрывает соединение с базой данных. Он не принимает параметров. После вызова метода соединение становится недействительным, а все связанные с ним транзакции откатываются. Соединение возвращается в пул движка для повторного использования.

Если соединение уже было закрыто, повторный вызов close не вызывает ошибки и не выполняет никаких действий. Метод не возвращает значения.

Синтаксис

connection.close()

Пример

Давайте откроем соединение с базой SQLite в памяти и закроем его методом close:

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

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

True

Пример

Метод close можно вызвать несколько раз подряд без возникновения ошибки:

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

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

True

Пример

При закрытии соединения незавершенная транзакция автоматически откатывается:

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 VALUES (1, 'article')")) conn.close() print(conn.closed)

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

True

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

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