The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Критическая уязвимость в системе управления web-контентом Dr..., opennews (??), 16-Окт-14, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


21. "Критическая уязвимость в системе управления web-контентом Dr..."  –3 +/
Сообщение от Аноним (16), 16-Окт-14, 09:56 
> Загуглите "prepared statement in" - удивитесь количеству одинаковых вопросов на stackoverflow
> (речь не только о PHP). Есть вообще БД API, которое поддерживает
> из коробки биндинг коллекций к одному плейсхолдеру? А ведь достаточно часто
> возникающий кейс.

Оно не нужно, не дело СУБД разгребать коллекции, и реализация такого алгоритма должна зависеть от ситуации а не "сейчас мы регулярками преобразуем строку запроса..."

p.s. старое утверждение про невозможность выполнения всех 3-х критериев разработки работает :)

Ответить | Правка | Наверх | Cообщить модератору

27. "Критическая уязвимость в системе управления web-контентом Dr..."  +/
Сообщение от йцу (?), 16-Окт-14, 13:45 
Ну алгоритм-то зачастую один и тот же - взять список чисел/строк и впихнуть в IN выражение.

Не дело СУБД - ok, но почему в тех же PDO, JDBC и т.п. API не добавить соответствующий метод? В DQL (doctrine) и HQL (hybernate) к примеру такая возможность есть (я понимаю, что это несколько более высокоуровневые штуки, но не вижу причину чтобы не реализовать это уровнем ниже - ну ведь нужная же вещь).

Ответить | Правка | Наверх | Cообщить модератору

31. "Критическая уязвимость в системе управления web-контентом Dr..."  +/
Сообщение от Аноним (16), 16-Окт-14, 15:01 
> Ну алгоритм-то зачастую один и тот же - взять список чисел/строк и
> впихнуть в IN выражение.
> Не дело СУБД - ok, но почему в тех же PDO, JDBC
> и т.п. API не добавить соответствующий метод? В DQL (doctrine) и
> HQL (hybernate) к примеру такая возможность есть (я понимаю, что это
> несколько более высокоуровневые штуки, но не вижу причину чтобы не реализовать
> это уровнем ниже - ну ведь нужная же вещь).

вы же сами ответили - разный уровень.
Если вы пришете в запросе in ( :param ), то :param - это то что выдерается при подготовке запроса ( построении плана и т.д. ), по уму в том же drupal должно бы быть 2 варианта

in ( :param )
и
in ( #суперидентификатонедопустимыйдляsqlзапроса#paramscollection )

тут же в унификации можно зайти очень далеко, в некоторых системах применяют что то вроде "Select &fields from &table &whereparam", но в этом случае все понимают что нельзя просто так что угодно в параметры передавать, такой usecase вы тоже предлагаете в jdbc/pdo встроить?

Ответить | Правка | Наверх | Cообщить модератору

33. "Критическая уязвимость в системе управления web-контентом Dr..."  +/
Сообщение от Аноним (16), 16-Окт-14, 15:05 
>по уму в том же drupal должно бы быть
> 2 варианта
> In ( :param )
> и
> in ( #суперидентификатонедопустимыйдляsqlзапроса#paramscollection )

хм почему то думал что in ( :param ) это из mysql -кого синтаксиса, по сути в друпале и есть второй вариант, просто с ошибкой в реализации.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру