Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

LIKE в MySQL не дружит с параметрами? [D7, IB6.x, MySQL]


Shama_n ©   (2005-07-15 17:08:00) 

на InterBase использовал такую конструкцию:
LIKE "%" || :Value || "%"
но MySQL ругается на неверный синтакисис. Корректно работает только:
LIKE "% {Строковое значение} %"
Есть варианты как можно вставить в данный запрос параметр?


evvcom   (2005-07-18 09:41:00) [1]


> LIKE "%" || :ParamName || "%"

Недавно пробовали на MSSQL такое, на синтаксис ругани не было, но запрос возвращал не то, что ожидалось. Т.е. если поле начинается с :ParamName, то в выборку это не попадало.


Shama_n   (2005-07-15 17:56:00) [2]

Прошу прощения, наверно после суток за компьютером перепутал синтакисис когда запрос проверял
SELECT * FROM TableName WHERE FieldName LIKE "%" || :ParamName || "%"
Данный запрос нормально работает и на IB и на MySQL


sniknik   (2005-07-15 17:41:00) [3]

> так не работает
ну, как знаеш... значит не судьба.

> PS: у меня не MSSQL а MySQL
указано что аналог, большая вероятность что в этом синтаксис совпадает... (уж больно нелогичен 1 пример)

p.s. а в IB (вернее firebird) синтаксис аналогичен. (проверил сейчас).


Shama_n   (2005-07-15 17:27:00) [4]

>Val ©   (15.07.05 17:12) [1]
>где интербейс такое позволяет?
Действительно... Выдрал из старого исходника, который раньше как-то работал, такую конструкцию но сейчас начал тестировать запрос и IB его тоже отвергает.

... LIKE :Value
так не работает
PS: у меня не MSSQL а MySQL


sniknik   (2005-07-15 17:17:00) [5]

> Есть варианты как можно вставить в данный запрос параметр?
наверное. в MSSQL то что ты написал (аналогичное) тоже не пойдет... но зато пройдет
... LIKE :Value

ParamByName('Value').Value:= '%'+MyStValue+'%';

попробуй также.


Val   (2005-07-15 17:12:00) [6]

где интербейс такое позволяет?


Наверх

Титульная страница Поиск, карта сайта Написать письмо