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

Класс Connection

Класс Connection представляет собой соединение с базой данных. Объект соединения создается методом connect у класса Engine и используется для выполнения SQL-запросов через методы execute, scalar, scalars, а также для управления транзакциями методами commit, rollback и begin. Класс поддерживает работу в контекстном менеджере with, при выходе из которого соединение автоматически закрывается.

Синтаксис

Connection(engine)

Пример

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

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

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

"<sqlalchemy.engine.base.Connection object at 0x...>"

Пример

Давайте выполним SQL-запрос через соединение с помощью метода execute:

from sqlalchemy import create_engine, text engine = create_engine('sqlite:///:memory:') with engine.connect() as conn: res = conn.execute(text('SELECT 1 AS num')) for row in res: print(row)

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

(1,)

Пример

Давайте создадим таблицу и вставим строку, используя соединение и явную транзакцию:

from sqlalchemy import create_engine, text engine = create_engine('sqlite:///:memory:') with engine.connect() as conn: conn.execute(text('CREATE TABLE articles (id INTEGER PRIMARY KEY, title TEXT)')) conn.execute(text("INSERT INTO articles (title) VALUES ('article')")) conn.commit() res = conn.execute(text('SELECT title FROM articles')) for row in res: print(row)

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

('article',)

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

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