Имея немного проблем с вставкой LIKE и использованием подстановочного знака в моем параметре в моем запросе с использованием coldfusion. Вот что в настоящее время работает:Использование шаблона в cfqueryparam - Coldfusion
<cfquery name="sample" datasource="database"><!---Take the query here--->
SELECT * <!---select all--->
FROM table <!---from the table "table"
WHERE
<cfloop from="1" to="#listLen(selectList1)#" index="i">
#ListGetAt(selectList1, i)# = <cfqueryparam cfsqltype="cf_sql_varchar" value="#ListGetAt(selectList2,i)#" /> <!---
search column name = query parameter
using the same index in both lists
(selectList1) (selectList2) --->
<cfif i neq listLen(selectList1)>AND</cfif> <!---append an "AND" if we are on any but
the very last element of the list (in that
case we don't need an "AND"--->
</cfloop>
</cfquery>
Моя цель состоит в том, чтобы получить код где-нибудь, где я могу ввести параметр, как так (но он не работает в настоящее время - ошибка чтения не может выполнить запрос)
<cfquery name="sample" datasource="database"><!---Take the query here--->
SELECT * <!---select all--->
FROM table <!---from the table "table"
WHERE
<cfloop from="1" to="#listLen(selectList1)#" index="i">
#ListGetAt(selectList1, i)# LIKE <cfqueryparam cfsqltype="cf_sql_varchar" value="%#ListGetAt(selectList2,i)#%" /> <!---
search column name = query parameter
using the same index in both lists
(selectList1) (selectList2) --->
<cfif i neq listLen(selectList1)>AND</cfif> <!---append an "AND" if we are on any but
the very last element of the list (in that
case we don't need an "AND"--->
</cfloop>
</cfquery>
Я предлагаю включить отладку, скопировать созданный ею запрос и затем запустить его в вашем анализаторе запросов. Обычно я могу найти все свои ошибки. –
Этот синтаксис должен работать. Я использую то же самое против MS SQL Server. Может ли один из элементов списка быть пустым и вызывает ошибку запроса? –
@ Miguel-F No. Запрос появляется в разделе № 1 кода, но не в разделе кода # 2 – Zac