CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

后台添加/删除记录问题

楼主maomao1224(笨笨)2005-08-28 19:56:55 在 .NET技术 / ASP.NET 提问

 
  在添加记录时出现如下问题:  
   
   
   
  “/”应用程序中的服务器错误。  
  --------------------------------------------------------------------------------  
   
  操作必须使用一个可更新的查询。    
  说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。    
   
  异常详细信息:   System.Data.OleDb.OleDbException:   操作必须使用一个可更新的查询。  
   
  源错误:    
   
  行当前   Web   请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。      
   
  堆栈跟踪:    
   
   
  [OleDbException   (0x80004005):   操作必须使用一个可更新的查询。]  
        System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(Int32   hr)   +41  
        System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS   dbParams,   Object&   executeResult)   +174  
        System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object&   executeResult)   +92  
        System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior   behavior,   Object&   executeResult)   +65  
        System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior   behavior,   String   method)   +112  
        System.Data.OleDb.OleDbCommand.ExecuteNonQuery()   +66  
        dotnews.news.news.addnews.sure_Click()   in   d:\working\复件   use\news\news\addnews.aspx.cs:91  
        dotnews.news.news.addnews.Page_Load(Object   sender,   EventArgs   e)   in   d:\working\复件   use\news\news\addnews.aspx.cs:45  
        System.Web.UI.Control.OnLoad(EventArgs   e)   +67  
        System.Web.UI.Control.LoadRecursive()   +35  
        System.Web.UI.Page.ProcessRequestMain()   +731  
   
     
  问题点数:10、回复次数:3Top

1 楼ChengKing((.net: http://blog.csdn.net/ChengKing ))回复于 2005-08-28 20:52:37 得分 10

你是不是没有读取数据库中的数据,直接插入记录,并调用   SqlAdapterData.Update(ds)对吧?  
   
    不知道对你有没有帮助,用SqlCommandBuider实现  
   
  用SqlCommandBuilder   实现:  
   
  public   int   UpdateByDataSet(DataSet   ds,string   strTblName,string   strConnection)  
  {  
  try  
  {  
  SqlConnection     conn   =   new   SqlConnection(strConnection));  
                   
  SqlDataAdapter   myAdapter   =   new   SqlDataAdapter();  
  SqlCommand   myCommand   =   new   SqlCommand("select   *   from   "+strTblName),(SqlConnection)this.conn);  
  myAdapter.SelectCommand   =   myCommand;  
  SqlCommandBuilder   myCommandBuilder   =   new   SqlCommandBuilder(myAdapter);  
  myAdapter.Update(ds,strTblName);  
   
  return   0;  
  }  
  catch(BusinessException   errBU)  
  {  
  //this.conn.Close();  
  throw   errBU;  
  }  
  catch(Exception   err)  
  {  
  //this.conn.Close();  
  throw   new   BusinessException(err);  
  }  
  }  
   
  功能:     1.可以实现你对DataSet在UI层做任意操作后,直接丢给这个方法,这个方法就可以自动把你的修改更新到数据库中  
                  2.只能更新一个表,不能更新关联的表,访问两次数据库,效率有些慢  
  注意问题:     表中必须有主键,且更新的表中字段不能有image类型的  
  Top

2 楼jimu8130(火箭的未来在哪里?)回复于 2005-08-28 21:24:41 得分 0

最好能给出具体错误代码行Top

3 楼maomao1224(笨笨)回复于 2005-08-29 19:39:10 得分 0

怎么给不了分啊?Top

相关问题

  • asp中对后台数据库做添加,修改,删除操作只能一条记录一条记录的处理吗?
  • 如何用ado添加、删除、修改记录?
  • 添加、删除记录和颠倒顺序,帮帮忙!
  • 如何使用ADO添加,删除,修改记录?
  • CRecordset记录集只能显示,不能删除和添加记录?
  • 请教:access以sql为后台不能添加记录的问题
  • 删除记录????
  • 记录删除
  • 急!!!为什么在SQL EXPLORER中添加的记录无法删除?
  • 如何编程往DNS服务器里添加,删除,修改A记录!!

关键词

  • 查询
  • 信息
  • executeresult
  • oledbcommand
  • oledb
  • addnews
  • 异常
  • 堆栈跟踪
  • 错误
  • 操作

得分解答快速导航

  • 帖主:maomao1224
  • ChengKing

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo