,,Access数据库提示OleDbException (0x80004005)- 操作必须使用一个可更新的查询

,,Access数据库提示OleDbException (0x80004005): 操作必须使用一个可更新的查询 使用接近当数据库时,这个问题郁闷了我好几天啊![OleDbException (0x80004005):操作必须使用一个可更新的查询。] 说明:执行当前网请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息:系统数据。OleDb.OleDbException:无法从指定的数据表中删除。 源错误: 行37:comm . CommandText=sqlstr;行38://comm . Prepare();行39:cout=comm . ExecuteNonQuery();行40: 行41:conn . Close(); 源文件:d:\SOVO验收代码\Base\App_Code\JetAccess.cs行: 39 [OleDbException (0x80004005):无法从指定的数据表中删除。系统数据。oledb。oledb命令。executecommandtextforsingleresult(tagDBPARAMS dbParams,Object executeResult) 267系统数据。oledb。oledb命令。执行命令文本(对象执行结果)192系统数据。oledb。oledb命令。执行命令(命令行为,对象执行结果)48系统数据。oledb。oledb命令。executereadenerinternal(命令行为行为,字符串方法)106系统数据。oledb。oledb命令。executenonquery()108 jet访问.在d:\SOVO中执行(OleDbParameter[]参数,字符串sqlstr)验收代码\ Base \ App _ Code \ jet access。cs:39新闻数据.删除d:\SOVO中的新闻(Int32 id)验收代码\ Base \ App _ Code \ news data。cs:29 _默认.d:\SOVO中的GridView1_RowDeleting(对象发送方,GridViewDeleteEventArgs e)验收代码\基本\系统\默认。aspx。cs:46系统.网络。ui。web控件。网格视图。on row deleting(GridViewDeleteEventArgs e)133系统web . com。ui。web控件。网格视图。句柄删除(GridView row row,Int32 rowIndex) 604系统web . com。ui。web控件。网格视图。处理事件(EventArgs e,布尔原因验证,字符串验证组)1155系统web . com。ui。web控件。网格视图。raisepostbackevent(字符串事件参数)199系统web . com。ui。web控件。网格视图。系统。网络。ui。ipostbackeventhandler。raisepostbackevent(字符串事件参数)7系统web . com。ui。页面。raisepostbackevent(IPostBackEventHandler源代码管理,字符串eventArgument) 11系统web . com。ui。页面。raisepostbackevent(NameValueCollection发布数据)174系统web . com。ui。页面。processrequestmain(Boolean includesagebeforeasyncpoint,Boolean includesageafterasyncpoint)5102 解决方法如下:在数据文件*.mdb上右键打开属性对话框,在'安全'标签下需要添加IUSR_XXX(XXX为你的机器名),也就是添加互联网来宾帐户帐户,再将此帐户的权限设为可读,可写。(原来这么简单就解决了的问题,我靠:) ) 如果在右键属性对话框内找不到'安全'标签,需要将文件夹选项下的视图内的'使用简单文件共享(默认)'的勾去掉。 原因:该错误有几个主要原因:当您的程序试图更新数据库或其他类似操作时,会出现此错误。这是因为ADO无法写入数据库,原因如下。1。最常见的原因是匿名用户帐户(IUSR_MACHINE)对数据库文件没有写权限。要解决这个问题,请在管理器中调整数据库文件的属性,以便匿名用户拥有正确的权限。当使用ACCESS数据库时,您不仅应该授予对文件的写权限,还应该授予对目录的写权限,因为Jet需要建立一个。目录中的ldb文件。2。第二个原因是数据库没有以正确的模式打开。应该使用以下方法打开它。SQL='更新产品集单价=2;'set=server . createobject(' adodb . connection ')conn . Mode=3 ' ' 3=admodereadwriteconn . open ' mydsn ' conn . execute(SQL)conn . close注意,默认模式设置为0(adModeUnknown),允许更新。3。也可以在ODBC管理器中检查该DSN的只读选项。4。如果同时更新两个表中的字段,也会出现此错误消息。解决方案是分别更新这两个表中各自的字段。5。当您使用从较低版本(例如ACCESS2.0、ACCESS7.0)加载到较高版本(ACCESS 2000)的查询时,在您执行此查询时会出现此错误。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 关系型数据库与非关系型数据库简介一样吗,关系型数据库非关系型数据库有哪些
  • 关系型数据库与非关系型数据库简介一样吗,关系型数据库非关系型数据库有哪些,关系型数据库与非关系型数据库简介
  • 关于redis数据库入门详细介绍图片,redis数据库的使用,关于Redis数据库入门详细介绍
  • 使用php连接mysql数据库,php连接数据库的方法
  • 使用php连接mysql数据库,php连接数据库的方法,一文详解PHP连接MySQL数据库的三种方式
  • 什么是分库分表,为什么要进行分库分表-,分库分表的区别,数据库分库分表是什么,什么情况下需要用分库分表
  • vb中adodb连接数据库,
  • treeview控件绑定数据,wpf treeview数据绑定,详解TreeView绑定数据库
  • sql的多表查询,数据库如何实现多表查询
  • SQL数据库的图形管理界面工具是,sql图形界面创建数据库
  • SQL数据库的图形管理界面工具是,sql图形界面创建数据库,SQLServer2019 数据库的基本使用之图形化界面操作的实现
  • sql数据库定时备份怎么弄,mysql 定期备份
  • sql数据库定时备份怎么弄,mysql 定期备份,MySQL 数据库定时备份的几种方式(全面)
  • sqlserver的nvarchar和varchar,数据库varchar和nvarchar
  • sqlserver的nvarchar和varchar,数据库varchar和nvarchar,SQL中varchar和nvarchar的基本介绍及其区别
  • 留言与评论(共有 条评论)
       
    验证码: