在运行动态SQL调用时,如果不设置cmd.CommandType属性,可能会遇到哪些陷阱?我无法使用adovbs.inc,使用cmd.CommandType = 200
会产生错误:
ADODB.Command(0x800A0BB9)参数 是错误的类型,是出于 可接受的范围,或有冲突 彼此。
因此,通过评论此行,所有内容似乎都按计划运行。但是,我可能遇到什么问题?
以下是代码的片段,用于上下文。
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()
答案 0 :(得分:4)
你有
cmd.CommandType = 200 ' adVarChar
您确定不想要
吗?cmd.CommandType = 1 ' adCmdText
代替?