Hey, maybe try something like this?  I haven't tested this, but it should 
theoretically be faster

<cfset sqlstring = "" />
<cfset questionIDLen = arrayLen(questionIDArray)><!---put this in a variable so 
it doesn't re-evaluate 2200 times--->
<cfset questionIDCheck = 0>
<cfloop index="i" from="2" to="#questionIDLen#">
 <!---remove "if" statement so it doesn't evaluate 2200 times either.--->
 <cfset questionIDCheck = isNumeric(questionIDArray[i] & 
parentQuestionIDArray[i] & parentLevelArray[i])><!---since all your params were 
checking for a numeric value, lump together and be sure they are all numeric.  
probably could use a regEx or other cffunctions to accomplish the same thing if 
this does not fit the bill--->
 <cfif questionIDCheck><!---only add to sql string if it passes the numeric 
check. --->
  <cfset sqlstring = 
'#sqlstring#,(#questionIDArray[i]#,#parentQuestionIDArray[i]#,#parentLevelArray[i]#)'>
 </cfif>
</cfloop>
<!---run query.  manually add first line since we didn't loop over it.--->
<cfquery name="insertData" datasource="dbname" >
INSERT INTO parentquestions
VALUES (<cfqueryparam value="#questionIDArray[1]#" cfsqltype="cf_sql_bigint" 
maxlength="20">,<cfqueryparam value="#parentQuestionIDArray[1]#" 
cfsqltype="cf_sql_bigint" maxlength="20">,<cfqueryparam 
value="#parentLevelArray[1]#" cfsqltype="cf_sql_bigint" maxlength="20">)
 #sqlstring#
</cfquery> 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion
Archive: 
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:339076
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm

Reply via email to