18 мая 2011 г. 21:49 пользователь Анатолий Шарифулин <[email protected]> написал: > Всё просто, .... ..., если перейти на DBIx::Class ;)
> генерить надо IN вручную, каждый элемент пропустить через quote, > НО если нет параметров, то NULL. > > У меня это делает DBI::Util, скоро выложу :) > > > 2011/5/18 Yury Zavarin <[email protected]> >> >> Ой, прошу прощения, не на тот вопрос ответил. Думал, что речь идет про >> один параметр. >> >> 2011/5/18 Yury Zavarin <[email protected]> >>> >>> Не нашел в документации метода bind_value. >>> Но вот мне когда нужно было однажды так сделать, я делал так: >>> $sth->bind_param($pnum, $value, { TYPE => SQL_INTEGER }); >>> >>> P. S. Тут важно понимать, что если начал пользоваться bind_param, то >>> нужно его вызвать для всех placeholder'ов, т. е. для тех, которые должны >>> быть в кавычках, нужно вызывать просто >>> $sth->bind_param($another_pnum, $another_value); >>> >>> >>> 2011/5/18 Василий Рябов <[email protected]> >>>> >>>> Всем привет >>>> >>>> Столкнулся с дурацкой проблемой и не могу найти в документации решение. >>>> Мне нужно выполнить запрос с условием "field in ( ? )". >>>> $sth->bind_value( 1, $args ) подставляет значение $args в плейсхолдер >>>> заключенным в кавычки, что не правильно - MySQL из-за этого среди одного >>>> значения, а не среди множества. >>>> >>>> Как можно выкрутиться, кроме как передав строку $args в запрос при его >>>> подготовке? В частности можно ли как-то заставить bind_value подставлять >>>> значение без кавычек, as is? >>>> >>>> Заранее спасибо. >>>> -- >>>> Василий Рябов, >>>> [email protected] >>>> -- >>>> Moscow.pm mailing list >>>> [email protected] | http://moscow.pm.org >>> >> >> >> -- >> Moscow.pm mailing list >> [email protected] | http://moscow.pm.org >> > > > > -- > С уважением, > Анатолий Шарифулин. > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > > -- Sincerely yours, Oleg Kostyuk (CUB-UANIC) -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
