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

Функция create_pool_from_url

Функция create_pool_from_url создает объект пула соединений на основе строки URL подключения к базе данных. Первым параметром функция принимает строку URL. Вторым необязательным параметром передается класс пула, например QueuePool, NullPool или StaticPool. Функция возвращает экземпляр пула, который можно использовать отдельно от движка.

Синтаксис

create_pool_from_url(url, [poolclass])

Пример

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

from sqlalchemy import create_pool_from_url pool = create_pool_from_url('sqlite:///:memory:') print(pool)

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

"<sqlalchemy.pool.impl.SingletonThreadPool object at 0x...>"

Пример

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

from sqlalchemy import create_pool_from_url from sqlalchemy.pool import StaticPool pool = create_pool_from_url( 'sqlite:///:memory:', poolclass=StaticPool ) print(pool)

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

"<sqlalchemy.pool.impl.StaticPool object at 0x...>"

Пример

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

from sqlalchemy import create_pool_from_url, text pool = create_pool_from_url('sqlite:///:memory:') conn = pool.connect() res = conn.execute(text('SELECT 1')) print(res.scalar()) conn.close()

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

"1"

Итоговый SQL запрос:

SELECT 1

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

  • функцию create_engine,
    которая создает движок базы данных
  • класс QueuePool,
    который представляет стандартный пул соединений
  • класс NullPool,
    который отключает пулирование соединений
  • класс StaticPool,
    который хранит одно общее соединение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить