SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » Firebird, HQbird, InterBase » Драйвер для python - возможны ли именованные параметры?
Драйвер для python - возможны ли именованные параметры? [сообщение #323] Mon, 15 August 2022 05:30 Переход к следующему сообщению
fraks в настоящее время в онлайне  fraks
Сообщений: 139
Зарегистрирован: June 2022
Географическое положение: Новосибирск
Senior Member
Привет.

Сам с питоном не работаю, но есть питонисты которые работают с моей базой на FB25.

Они страдают тем что собирают текст запроса каждый раз, включая данные, т.е. совершенно не используют параметры.
Почитал доку на драйвер FDB
https://firebirdsql.org/file/documentation/drivers_documenta tion/python/fdb/usage-guide.html#parametrized-statements
там есть про параметры, но они неименованные, т.е. требуется соблюдать количество и порядок параметров в запросе и в кортеже параметров.

Мне видится что тут разложена масса граблей, особенно если запросы посложнее чем в доке примеры. Когда запрос на несколько экранов, и параметры используются в нем многократно.
А если запрос поредактировали - то и ваще караул.

После IBX и FIB это видеть вообще диковато Smile

Вопросы

- как вы этим пользуетесь, сталкивались с этими граблями?
- есть ли вариант использовать именованные параметры?

В SQLAlchemy вроде есть такое, но сам этот ОРМ нафиг не нужен.

[Обновления: Mon, 15 August 2022 05:39]

Известить модератора

Re: Драйвер для python - возможны ли именованные параметры? [сообщение #324 является ответом на сообщение #323] Mon, 15 August 2022 12:48 Переход к предыдущему сообщениюПереход к следующему сообщению
МП в настоящее время не в онлайне  МП
Сообщений: 887
Зарегистрирован: August 2022
Географическое положение: бурятский тун...
Senior Member
fraks
После IBX и FIB это видеть вообще диковато
IBX и FIB "внутрях" тоже работают с параметрами по номерам.
ParamByName() - обманка для юзера.
в самом ISC API нет функционала для работы с именованными параметрами.
он реализуется библиотекой доступа.
видимо создатели FDB не посчитали нужным с этим заморачиваться.
Re: Драйвер для python - возможны ли именованные параметры? [сообщение #328 является ответом на сообщение #324] Tue, 16 August 2022 03:36 Переход к предыдущему сообщению
fraks в настоящее время в онлайне  fraks
Сообщений: 139
Зарегистрирован: June 2022
Географическое положение: Новосибирск
Senior Member
То что унутре параметры без имен - понятно.
То что в IBX/FIB обманка (но я бы назвал это очень полезным дополнением) - это понятно.
И что автор[ы] FDB не заморочились - это тоже понятно Smile

Я хотел узнать как энтот FDB на практике используют - так и маются без имен, отслеживая порядок параметров в запросе и в кортеже, или есть какая-то дополнительная приблуда где эту функцию реализовали?
Предыдущая тема: Почему gbak от firebird 2.5 разбивает файл бэкапа на тома
Следующая тема: Генераторы в FB4
Переход к форуму:
  


Текущее время: Fri Nov 22 04:35:05 GMT+3 2024

Общее время, затраченное на создание страницы: 0.01006 секунд