我使用mongo的system.profile分析性能,发现了这样的问题。
两种不以相同方式编写的查询语句会得到不同的结果。
set objCmd = Server.CreateObject("ADODB.Command")
set objCmd.ActiveConnection = objConn
objCmd.CommandText = "sp_insertSurveyAnswerDetail"
objCmd.CommandType = 4 'adCmdStoredProc
objCmd.Parameters.Append objCmd.CreateParameter("title", 202, 1, 50, replace(title, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("username", 202, 1, 50, replace(username, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("age", 129, 1, 10, replace(age, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("occupation", 202, 1, 260, replace(occupation, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("phone_no", 202, 1, 260, replace(phone_no, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("email_add", 202, 1, 260, replace(email_add, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("fax_no", 202, 1, 260, replace(fax_no, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("address", 202, 1, 1000, replace(address, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("discussion", 202, 1, 4000, replace(discussion, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("public_service", 129, 1, 1, replace(public_service, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("p_public_service", 129, 1, 1, replace(p_public_service, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("visited", 129, 1, 1, replace(visited, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("group_joined", 129, 1, 1, replace(Left(group_joined,1), "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("source_from", 202, 1, 500, replace(checkbox_source, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("sender_IP", 202, 1, 50, replace(sender_ip, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("webmaster_email", 202, 1, 260, replace(webmaster_email, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("email_subject", 202, 1, 260, replace(email_subject, "'", "''"))
objCmd.Parameters.Append objCmd.CreateParameter("email_body", 203, 1, -1, replace(mail_body, "'", "''"))
on error resume next
objCmd.Execute
if objConn.Errors.Count = 0 then
objConn.committrans
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open "select Max(cfg_id) from SurveyData", objConn
if not objRS.EOF then
ref_id = objRS.Fields(0)
end if
objRS.Close
on error goto 0
response.redirect "registration_success.asp?lang=" & lang & "&refno=" & ref_id
else
'failed to add message
objConn.RollbackTrans
objConn.close
set objConn = nothing
response.redirect("")
response.end
end if
end if