Y at-il un moyen de définir le CursorType
pour un ADODB.RecordSet
que j'obtiens de ADODB.Command.Execute
?Définition de CursorType avec ADODB.Command.Execute
Je sais qu'il est possible que si je fais:
rs = Server.CreateObject("ADODB.RecordSet")
rs.Open(cmd)
Cependant, j'utilise actuellement Command.Execute
avec le paramètre Parameters
, qui gère automatiquement les tableaux de variantes de-?
paramètres pour l'interpolation en toute sécurité. Par conséquent, l'utilisation de RecordSet.Open
ne semble pas être une option.
Plus précisément, mon code ressemble actuellement:
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
Si je veux maintenir cette même API, mais aussi contrôle CursorType
, comment cela peut-il être accompli?
[Apparemment, il ne peut pas] (https://support.microsoft.com/en-us/kb/ 188857). –
Une formulation alternative de cette question serait: Existe-t-il un moyen de gérer automatiquement les variables-tableaux de paramètres '?' Avec 'RecordSet.Open'? –