0
我在目录中获取的所有文件(影像)的查询查找图像
<cfset local.teamBase = "#GetDirectoryFromPath(GetBaseTemplatePath())#teamlogo\">
<cfdirectory action="LIST" directory="#local.teamBase#" name="rc.qryTeamLogo">
后来我在所有这些文件名循环,跳过那些在使用
<select name="Logo" <cfif deleted>disabled="disabled"</cfif>>
<option></option>
<cfloop query="rc.qryTeamLogo">
<cfif name EQ mylogo>
<option value="#name#" selected>#name#</option>
<cfelseif request.objTeam.isUsed(name) EQ 1 OR name EQ "thumbs.db">
<!--- Do not show --->
<cfelse>
<option value="#name#">#name#</option>
</cfif>
</cfloop>
</select>
的isUsed()
功能看起来像
<cffunction name="isUsed" returntype="boolean" output="false">
<cfargument name="logo" required="true" type="string">
<cfquery name="qryUsed" datasource="#application.DSN#">
SELECT logo
FROM CCF.team
WHERE logo = <cfqueryparam cfsqltype="CF_SQL_VARCHAR" value="#arguments.logo#">
AND Deleted = 0
</cfquery>
<cfif qryUsed.recordcount EQ 0>
<cfreturn false>
</cfif>
<cfreturn true>
</cffunction>
的问题,这是因为越来越多的文件s被添加,这变得越来越慢。
我真的很喜欢,可以组装整个事情
我不知道我们有多少价值在谈论这里,但只要记住还有多少价值的'IN'限制子句将接受(依赖于数据库)。一个'IN'子句更适合小的值列表。一旦超出某个特定点,基于表的连接方法通常会提供更好的性能。 – Leigh