奇怪的问题:同样的函数,在两个VS2010解决方案中表现不一样
是向数据库插入相同的数据,数据库也相同,数据表也相同。
一个正常,成功返回,另一个提示如下信息:
列名或所提供值的数目与表定义不匹配。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息:
System.Data.SqlClient.SqlException: 列名或所提供值的数目与表定义不匹配。
源错误:
行 107: if (pars != null)
行 108: cmd.Parameters.AddRange(pars);
行 109: return cmd.ExecuteNonQuery();
行 110: }
行 111: }
源文件: D:\Glenn\ERPs -FRAME4\ERP.DAL\DBHelper.cs 行: 109
堆栈跟踪:
[SqlException (0x80131904): 列名或所提供值的数目与表定义不匹配。]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +212
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +245
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +1099
System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) +2858575
System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) +470
System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +182
ERP.DAL.DBHelper.GetExcuteNonQuery(String cmdTxt, SqlParameter[] pars) in D:\Glenn\ERPs -FRAME4\ERP.DAL\DBHelper.cs:109
ERP.DAL.DBHelper.GetExcuteNonQuery(String cmdTxt) in D:\Glenn\ERPs -FRAME4\ERP.DAL\DBHelper.cs:95
ERP.DAL.InDepotService.InsertInModelDetail(InModelDetail inde) in D:\Glenn\ERPs -FRAME4\ERP.DAL\InDepotService.cs:68
ERP.BLL.InModelDetailManager.InsertInModelDetail(InModelDetail inmodeldetail) in d:\Glenn\ERPs -FRAME4\WEB\App_Code\InModelDetailManager.cs:15
Master_Default.btnClickOK_Click(Object sender, EventArgs e) in d:\Glenn\ERPs -FRAME4\WEB\InDepot.aspx.cs:88
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +115
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +140
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +29
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2981
哪位高人解答?
------解决方案--------------------列名或所提供值的数目与表定义不匹配
------解决方案--------------------请断点调试
------解决方案--------------------表结构不同
------解决方案--------------------肯定有不一样的地方,要么代码不同,要么数据库结构不同。
------解决方案--------------------插入的列名与表结构列不匹配,再注意看下
------解决方案--------------------看下这些methodName,cmdTxt,eventArgument的定义和数据库有没有什么不同
------解决方案--------------------肯定是没把语句写完整,或者是遇到null值了
------解决方案--------------------问题描述得不够清晰,看不出你怎么操作的。没法判断,而且你的问题容易误导别人,让别人误以为你做了正确的操作。。。