2016-01-29 3 views
1

В приложении ColdFusion 11 у меня есть объект запроса, который содержит строки, содержащие символ квадратной скобки открытия - [. Мне нужно иметь возможность выполнять запрос запросов (QoQ) этого объекта запроса, чтобы найти записи, содержащие символ [character], но я не могу найти способ избежать этого.CF11 QoQ поиск символа квадратной скобки

Лучшее предложение, которое я нашел - LIKE '%[[]%' - не возвращает результатов.

Этот код возвращает сообщение об ошибке:

<cfquery name="temp" dbType="query"> 
SELECT * 
FROM myQuery 
WHERE myField LIKE '%[%' 
</cfquery> 

Этот код также возвращает сообщение об ошибке:

<cfquery name="temp" dbType="query"> 
SELECT * 
FROM myQuery 
WHERE myField LIKE '%\[%' ESCAPE '\' 
</cfquery> 

И этот код не возвращает никаких записей на всех, даже если я знаю, что характер есть :

<cfquery name="temp" dbType="query"> 
SELECT * 
FROM myQuery 
WHERE myField LIKE '%[[]%' 
</cfquery> 

Любые предложения были бы весьма полезными. Благодарю.

+0

http://stackoverflow.com/a/21999934/3112803 – gfrobenius

ответ

4

Вы были близки. Используя ссылку, которая gfrobenius размещена, вы получите это:

<cfquery name="temp" dbType="query"> 
SELECT * 
FROM myQuery 
WHERE myField LIKE '%[\[ ]%' 
</cfquery> 
+0

Спасибо beloitdavisja. Я видел страницу, которую опубликовал gfrobenius. Вероятно, мне следовало поближе рассмотреть его. Код, который вы опубликовали, нашел мои записи с открытыми скобками, но также нашел записи, которые не содержат открытого скобки. Похоже, что он также находит записи, содержащие литеральный символ подчеркивания. Так что что-то еще не совсем верно. –

+0

Я успешно протестировал этот ответ только с параметром запроса. Также с параметрами запроса я получил аналогичные результаты, используя код в вопросе. –

+0

В моих тестах код выглядит так же, как и записи, содержащие литеральные символы подчеркивания. Позвольте мне попробовать ti с cfQueryParam и посмотреть, поможет ли это. –

 Смежные вопросы

  • Нет связанных вопросов^_^