2009-07-27 6 views
0

Quels pièges mai-je rencontrer en ne définissant pas l'attribut cmd.CommandType lors de l'exécution d'un appel SQL dynamique? Je ne peux pas utiliser Adovbs.inc, et en utilisant cmd.CommandType = 200 donne l'erreur:Les effets secondaires de ne pas inclure CommandType pour SQL dynamique?

ADODB.Command (0x800A0BB9) Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

Ainsi, en commentant cette ligne sur, tout semble fonctionner comme prévu. Cependant, quels problèmes puis-je rencontrer?

Voici un extrait du code, par contexte.

 Dim cmd 
     Set cmd = Server.CreateObject("ADODB.Command") 
     cmd.ActiveConnection = dbConn 
     cmd.CommandText = "SELECT * FROM Users WHERE active = 1 AND username=? AND password=?" 
     cmd.CommandType = 200 'advarchar 
     cmd.Parameters(0) = request.form("username") 
     cmd.Parameters(1) = request.form("password") 
     Dim RS 
     Set RS = cmd.Execute() 

Répondre

4

Vous avez

cmd.CommandType = 200 ' adVarChar 

Êtes-vous sûr que vous ne voulez pas

cmd.CommandType = 1 ' adCmdText 

à la place?

+0

Vous avez raison, haha. Merci pour ça. Que fait cette ligne pour moi, si quand je l'exclure, tout semble encore fonctionnellement correct? – Chris

Questions connexes