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

Метод create класса URL

Метод create класса URL создает объект URL из отдельных компонентов: имени диалекта, имени пользователя, пароля, хоста, порта, имени базы данных и словаря параметров запроса. Первым параметром передается имя диалекта (драйвера) в виде строки, например 'sqlite' или 'postgresql'. Остальные компоненты передаются именованными параметрами и являются необязательными.

Синтаксис

URL.create(drivername, [username], [password], [host], [port], [database], [query])

Пример

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

from sqlalchemy.engine import URL url = URL.create('sqlite', database=':memory:') print(url)

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

"sqlite:///:memory:"

Пример

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

from sqlalchemy.engine import URL url = URL.create( 'postgresql', username='user', password='secret', host='localhost', port=5432, database='articles' ) print(url)

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

"postgresql://user:secret@localhost:5432/articles"

Пример

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

from sqlalchemy.engine import URL url = URL.create( 'sqlite', database=':memory:', query={'charset': 'utf8'} ) print(url)

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

"sqlite:///:memory:?charset=utf8"

Пример

Давайте создадим объект URL и передадим его в функцию create_engine для подключения к базе:

from sqlalchemy import create_engine, text from sqlalchemy.engine import URL url = URL.create('sqlite', database=':memory:') engine = create_engine(url) with engine.connect() as conn: res = conn.execute(text('SELECT 1')) print(res.scalar())

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

1

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

  • класс URL,
    который представляет строку подключения
  • метод render_as_string,
    который возвращает строковое представление URL
  • атрибут drivername,
    который хранит имя диалекта подключения
  • атрибут database,
    который хранит имя базы данных
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить