먼저 코드를 작성하십시오.Coldfusion : cfqueryparam을 포함하는 동적 쿼리 실행
Error Executing Database Query.
[Macromedia][SQLServer JDBC Driver][SQLServer]Incorrect syntax near '<'.
그것은이 보인다 :하지만 오류를 얻고있다
<cfquery name="qName" datasource="#dsn#">
#myQueryStruct[arguments.type]#
</cfquery>
을 : 나는 아래와 같이 동적으로 쿼리를 실행해야
<cfset myQueryStruct = {
qone = "select * from t1 where column = <cfqueryparam cfsqltype='cf_sql_varchar' value='#arguments.a1#'>",
qtwo = "select * from t2 where column = <cfqueryparam cfsqltype='cf_sql_varchar' value='#arguments.a1#'>"
}>
: 나는 쿼리의 구조체를 만들고 있어요 오류가 "<cfqueryparam cfsqltype='cf_sql_varchar' value='#arguments.a1#'>
"검색어 ("<")와 관련이 있습니다.
시도해 보았습니다. evaluate()
를 사용하여이 오류 얻고있다 :, 수 나는 우리가 <cfquery>
하지만 내 질문은 내부 <cfif>
사다리를 사용하여이 작업을 수행 할 수 있습니다 알고
Invalid CFML construct found on line 1 at column 15.
ColdFusion was looking at the following text:
t1
을 우리는 내가를 언급하는 방식 (내가 모르는 뭔가가 있어야합니다)처럼 이렇게 또는 CFML에서 가능하지 않습니까?
'cfqueryparam'의'cfscript' 버전을 살펴볼 수 있습니다. 확실히 말할 수는 없지만 시도하려는 내용에 적용되는 것처럼 보입니다. https://cfdocs.org/cfqueryparam – snackboy
CFQUERYPARAM을 사용하는 것은 칭찬 할만한 일이지만 동적 쿼리와 함께 사용하는 것은 어렵습니다. 해결 방법은 아래 Andreas 응답을 참조하십시오. 한편, cfquery 태그 사이에 코드를 출력하는 것을 고려하십시오. 이것이 cfquery가 디자인 한 것이며 실제로 스크립트에 태그를 선호하는 장소 중 하나입니다. SQL 관리자에서 복사하고 바인딩을 추가하기가 쉽습니다. –