Атрибут drivername
Атрибут drivername класса URL
возвращает имя драйвера базы данных,
извлеченное из строки подключения.
Драйвер - это часть URL,
которая идет после схемы базы данных
и отделяется от нее знаком +.
Если драйвер не указан явно,
атрибут возвращает имя диалекта по умолчанию.
Атрибут доступен только для чтения
и представляет собой строку.
Его значение формируется автоматически
при создании объекта URL
из строки подключения
или при передаче параметра drivername
в метод create.
Синтаксис
url.drivername
Пример
Давайте разберем строку подключения
к базе SQLite
и выведем имя драйвера:
from sqlalchemy import make_url
url = make_url('sqlite:///:memory:')
print(url.drivername)
Результат выполнения кода:
"sqlite"
Пример
Давайте разберем строку подключения с явно указанным драйвером:
from sqlalchemy import make_url
url = make_url('sqlite+pysqlite:///:memory:')
print(url.drivername)
Результат выполнения кода:
"sqlite+pysqlite"
Пример
Давайте создадим объект URL
с помощью метода create
и передадим драйвер явно:
from sqlalchemy import URL
url = URL.create(
drivername='postgresql+psycopg2',
username='user',
password='password',
host='localhost',
port=5432,
database='articles_db'
)
print(url.drivername)
Результат выполнения кода:
"postgresql+psycopg2"
Пример
Давайте используем атрибут drivername
для проверки типа драйвера
перед созданием движка:
from sqlalchemy import make_url, create_engine
url = make_url('sqlite:///:memory:')
if url.drivername.startswith('sqlite'):
engine = create_engine(url)
print(engine)
else:
print('Unsupported driver')
Результат выполнения кода:
"Engine(sqlite:///:memory:)"
Смотрите также
-
класс
URL,
который представляет строку подключения к базе данных -
метод
create,
который создает объект URL из отдельных компонентов -
метод
render_as_string,
который возвращает строковое представление URL -
атрибут
database,
который хранит имя базы данных из строки подключения