2009-07-27 2 views
0

Welche Fallstricke können auftreten, wenn das Attribut cmd.CommandType nicht festgelegt wird, wenn ein dynamischer SQL-Aufruf ausgeführt wird? Ich kann nicht verwenden adovbs.inc und cmd.CommandType = 200 Verwendung ergibt den Fehler:Nebenwirkungen von CommandType für dynamische SQL nicht enthalten?

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

Also durch diese Zeile aus zu kommentieren, alles erscheint wie geplant zu arbeiten. Aber auf welche Probleme kann ich stoßen?

Hier ist ein Ausschnitt des Codes, für den Kontext.

 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() 

Antwort

4

Sie haben

cmd.CommandType = 200 ' adVarChar 

Sind Sie sicher, dass Sie nicht wollen,

cmd.CommandType = 1 ' adCmdText 

statt?

+0

Sie haben Recht, haha. Danke für das. Was macht diese Zeile für mich, wenn ich sie ausschließe, scheint alles funktional korrekt zu sein? – Chris