Setting CursorType with ADODB.Command.Execute
<p>Is there any way to set the <code>CursorType</code> for an <code>ADODB.RecordSet</code> which I obtain from <code>ADODB.Command.Execute</code>?</p>

<p>I know that it is possible if I do:</p>

<pre><code>rs = Server.CreateObject("ADODB.RecordSet")
rs.Open(cmd)
</code></pre>

<p>However, I currently use <code>Command.Execute</code> with the <code>Parameters</code> parameter, which automatically handles variant-arrays of <code>?</code> parameters for safe interpolation. Therefore using <code>RecordSet.Open</code> does not appear to be an option.</p>

<p>Specifically, my code currently looks like:</p>

<pre><code>function ExecuteSQL(conn, sql, args)
    set ExecuteSQL_CmdObj = Server.CreateObject("ADODB.Command")
    ExecuteSQL_CmdObj.CommandType = adCmdText
    ExecuteSQL_CmdObj.CommandText = sql
    ExecuteSQL_CmdObj.ActiveConnection = conn
    if Ubound(args) = -1 then
        set ExecuteSQL = ExecuteSQL_CmdObj.Execute
    else
        set ExecuteSQL = ExecuteSQL_CmdObj.Execute(,args)
    end if
end function
</code></pre>

<p>If I want to maintain this same API, but <em>also</em> control <code>CursorType</code>, how can this be accomplished?</p>