当前位置:编程学习 > C#/ASP.NET >>

ASP.NET

我改了数据库的一个字段名,后来运行就出现这个问题了,是什么原因。各位大大帮我看一下



列名 'BookName' 无效。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.Data.SqlClient.SqlException: 列名 'BookName' 无效。

源错误: 

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  

堆栈跟踪: 


[SqlException (0x80131904): 列名 'BookName' 无效。]
   System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +177
   System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +68
   System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +199
   System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2305
   System.Data.SqlClient.SqlDataReader.ConsumeMetaData() +31
   System.Data.SqlClient.SqlDataReader.get_MetaData() +62
   System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +294
   System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) +1021
   System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) +314
   System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) +20
   System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) +107
   System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior) +10
   System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior) +7
   System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +139
   System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +140
   System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable) +83
   System.Web.UI.WebControls.SqlDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments) +1659
   System.Web.UI.WebControls.ListControl.OnDataBinding(EventArgs e) +86
   System.Web.UI.WebControls.ListControl.PerformSelect() +18
   System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +68
   System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() +61
   System.Web.UI.WebControls.ListControl.OnPreRender(EventArgs e) +26
   System.Web.UI.Control.PreRenderRecursiveInternal() +88
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5725

 
--------------------编程问答-------------------- 你数据库中字段改了,代码中没改吧?代码改完更新了没有? --------------------编程问答-------------------- 你代码中的执行sql语句那里把BookName改为你数据库对应修改的名字应该就可以了 --------------------编程问答-------------------- 你代码中的执行sql语句那里把BookName改为你数据库对应修改的名字应该就可以了 --------------------编程问答-------------------- 同意1楼的说的,是不是没改,和更新啊 --------------------编程问答--------------------  sql BookName改为你数据库对应修改的名字应该就可以了 --------------------编程问答-------------------- <sessionState  問題 --------------------编程问答--------------------
引用 1 楼 net_lover 的回复:
你数据库中字段改了,代码中没改吧?代码改完更新了没有?


再改数据库的时候,最好把代码也一起改了。 --------------------编程问答-------------------- 哥们,代码没改啊! --------------------编程问答-------------------- 你要检测下执行sql语句里的BookName是否与你数据库对应的名字相同 --------------------编程问答-------------------- 这不是很明显的问题么..检查这个字段是否存在于你的数据库表  还有程序中的实体层对应. --------------------编程问答-------------------- 明显代码和数据库的列不对应额 --------------------编程问答-------------------- 明显代码和数据库的列不对应额
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,