[Moscow.pm] bind_value

Анатолий Шарифулин sharifulin на gmail.com
Ср Май 18 11:49:30 PDT 2011


Всё просто, генерить надо IN вручную, каждый элемент пропустить через quote,
НО если нет параметров, то NULL.

У меня это делает DBI::Util, скоро выложу :)


2011/5/18 Yury Zavarin <yury.zavarin на gmail.com>

> Ой, прошу прощения, не на тот вопрос ответил. Думал, что речь идет про один
> параметр.
>
>
> 2011/5/18 Yury Zavarin <yury.zavarin на gmail.com>
>
>> Не нашел в документации метода 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 Василий Рябов <me на ryvasy.net>
>>
>>> Всем привет
>>>
>>> Столкнулся с дурацкой проблемой и не могу найти в документации решение.
>>> Мне нужно выполнить запрос с условием "field in ( ? )".
>>> $sth->bind_value( 1, $args ) подставляет значение $args в плейсхолдер
>>> заключенным в кавычки, что не правильно - MySQL из-за этого среди одного
>>> значения, а не среди множества.
>>>
>>> Как можно выкрутиться, кроме как передав строку $args в запрос при его
>>> подготовке? В частности можно ли как-то заставить bind_value подставлять
>>> значение без кавычек, as is?
>>>
>>> Заранее спасибо.
>>> --
>>> Василий Рябов,
>>> me на ryvasy.net
>>> --
>>> Moscow.pm mailing list
>>> moscow-pm на pm.org | http://moscow.pm.org
>>>
>>
>>
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>
>


-- 
С уважением,
 Анатолий Шарифулин.
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20110518/e7d082d3/attachment-0001.html>


Подробная информация о списке рассылки Moscow-pm