Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Prepared statement WHERE clause as param (Сергей) 01/06/2011 - 22:30:01
      Re: Prepared statement WHERE clause as param (Akina) 02/06/2011 - 09:13:42
      Re: Re: Prepared statement WHERE clause as param (Сергей) 02/06/2011 - 13:22:11

> Original message text:
> From: Сергей - 01/06/2011 - 22:30:01
> Subject:Prepared statement WHERE clause as param
> -----------------
> В google ходил, ответа не нашел.
>
> Хочу сделать вот так:
> set @articles_count = 10;
> set @where_clause = 'name is null';
>
> prepare stmt from 'select `id_article` from `bm_articles` where ? limit ?';
> execute stmt using @where_clause, @articles_count;
> deallocate prepare stmt;
>
> Чтобы в результате выполнилось вот это
> select `id_article` from `bm_articles` where name is null limit 10
> А выполняется вот это:
> select `id_article` from `bm_articles` where 'name is null' limit 10
> (Это догадка но кажется так, кстати как это можно точно узнать?)
> Можно ли это как-нибудь заставить работать как я хочу?
>
>


From: Akina - 02/06/2011 - 09:13:42
Subject:Prepared statement WHERE clause as param
-----------------
> Это догадка но кажется так, кстати как это можно точно узнать?

Да, это работает ИМЕННО ТАК. Prepared Statement принимает именно ПАРАМЕТРЫ, а не кусок текста запроса для до-prepare-ивания его.

> Можно ли это как-нибудь заставить работать как я хочу?

ЭТО - нельзя. Надо менять логику подхода к решению задачи.


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
38578



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |