您的位置首页生活百科

Parameters.Add和Parameters.AddWithValue有什么区别

Parameters.Add和Parameters.AddWithValue有什么区别

参考1:http://topic.csdn.net/u/20090110/23/4c4e1a49-607e-4a06-a231-b16fefa73674.html参考2:http://ziwei888.wordpress.com/2008/10/02/parameteradd-%E8%88%87-parameteraddwithvalue-%E7%9A%84%E5%B7%AE%E5%88%A5/个人梁枯觉得:Parameters.Add在传入参数的时候需要设置参数的数据类型,有些塌渣备麻烦。而Parameters.AddWithValue不需要,但是Parameters.AddWithValue在传入数据是DataTime的时候会出错。所以我的做团毁法是在能用AddWithValue的时候就用他paramNames:参数的数组 for (int i = 0; i < paramNames.Count; i++) { if (objParamValues[i].GetType().ToString() == "System.DateTime") {//是时间类型,用Add替换 OleDbParameter p = new OleDbParameter(); p.ParameterName = paramNames[i]; p.OleDbType = OleDbType.Date; p.Value = objParamValues[i]; cmd.Parameters.Add(p); } else cmd.Parameters.AddWithValue(paramNames[i], objParamValues[i]); }