IIF and DE aren't widely used these days in CF.
Are the form fieldnames the same as the query columns? If so you could do something like:
IF using the query
set stuData = yourQueryName
ELSE
set stuData = form
/IF
Then refer to it like:
<input type="text" value="<cfif len(stuData[fieldname])>#stuData[fieldname]#</cfif>" />