WebDB - синтаксис SQLLite LIKE ... ускользает от меня - PullRequest
1 голос
/ 31 января 2012

Попытка:

tx.executeSql («ВЫБЕРИТЕ * ИЗ Animal_Traits ГДЕ animalName LIKE%?% OR trait LIKE%?% ORDER BY animalName», [searchValue, searchValue],

С ЭТИМ мне говорят, что синтаксис нарушается на символе% ... поэтому, если я попробую ЭТО:

tx.executeSql ("SELECT * FROM Animal_Traits WHERE animalName LIKE '%'? '%' ИЛИtrait LIKE '%'? '%' ORDER BY animalName ", [searchValue, searchValue],

, и он говорит мне, что синтаксические разрывы на символе? ... (угадайте первый?) И ЕСЛИ ЯПОПРОБУЙТЕ ЭТО:

tx.executeSql ("ВЫБРАТЬ * ИЗ Animal_Traits ГДЕ animalName LIKE '%?%' ИЛИ ​​trait LIKE"%?% 'ORDER BY animalName ", [searchValue, searchValue],

Это говорит мне, что количество аргументов не совпадает ... grrr!

Может кто-нибудь помочь мне, пожалуйста.

спасибо!

1 Ответ

2 голосов
/ 31 января 2012

Вам нужно сделать это:

... WHERE animalName LIKE '%' || ? || '%' OR trait LIKE '%' || ? || '%'

|| - это конкатенация строк.И вопросительный знак должен быть вне кавычек.

...