我一直在尝试使用ADODB.Command执行参数化查询.我知道我可以用“?”对于参数,但我的查询相当大,我真的不想跟踪参数的确切顺序.我尝试过以下内容:
objCmd.CommandType = adCmdText objCmd.CommandText = "SELECT ... WHERE field1=@p_Field1 ...." Dim objParam As ADODB.Parameter Set objParam = objCmd.CreateParameter("@p_Field1" ...) objCmd.Parameters.Append objParam ... objCmd.Open@H_404_12@它适用于存储过程参数(显然设置CommandType = adCmdStoredProc),但由于查询本身的动态特性,我无法在存储过程中执行此操作.当我尝试运行查询时,我收到错误:
Must declare the scalar variable "@p_Field1"@H_404_12@