操作必须使用一个可更新的查询

原创 2004年09月22日 10:40:00
 错误“操作必须使用一个可更新的查询”原因及解决办法

翻译得比较匆忙,呵呵。
错误信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 Driver] Operation must use an
updateable query.
或者是:
Microsoft JET Database Engine (0x80004005)
操作必须使用一个可更新的查询。

原因:
有几个主要的错误原因:
这个错误发生在当你的程序试图执行更新数据库或其它类似操作时。这是因为
ADO由于以下的几个原因而不能够写数据库造成的。
1。最普遍的原因是匿名用户帐号(IUSR_MACHINE)对该数据库文件没有写权限。
要解决这个问题,在管理器中调整数据库文件的属性,让匿名用户有正确的权限。
当使用ACCESS数据库时,不仅要给文件写的权限,还要给该目录写 的权限,因为
Jet需要在该目录建立一个.ldb文件。
2。第二个原因是数据库没有使用正确的模式打开。应该使用下面的方法打开。
SQL = "UPDATE Products Set UnitPrice = 2;"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Mode = 3 '3 = adModeReadWrite
Conn.Open "myDSN"
Conn.Execute(SQL)
Conn.Close
注意默认的Mode是设置0(adModeUnknown),它是允许更新的。
3。还有可能是在ODBC管理器中将该DSN的只读选项选中。
4。你是在同时更新两个表中的字段,也会出现这个错误信息,解决办法是分开来更新
这两个表中各自字段。
5。当你使用了一个从低版本中(如ACCESS2.0,ACCESS7.0)载入到高版本(ACCESS 2000)
中的查询时,在执行这个查询是会出现该错误。

Access数据库“操作必须使用一个可更新的查询”

今天又遇到这样一个错误“操作必须使用一个可更新的查询”这里我整理下原因及解决办法,大家以后再遇到相同的问题可以先试下类似的解决办法. 网上百度了很多,都没有什么作用,大多都是说权限问题,改的也都很麻...
  • catoop
  • catoop
  • 2012年09月05日 17:26
  • 6653

解决:操作必须使用一个可更新的查询

WinXP的解决办法:设置App_Data目录中的Access文件的写入权限即可, 步骤如下:选择Access文件,右键属性-安全-添加-选择ASPNET用户-权限中勾选写入权限-确定。 Win200...
  • eooda
  • eooda
  • 2007年02月25日 16:03
  • 652

未知错误 ID:-2147467259 "操作必须使用一个可更新的查询"

原因:最普遍的原因是匿名用户帐号(IUSR_MACHINE)对该数据库文件没有写权限。 要解决这个问题,在管理器中调整数据库文件的属性,让匿名用户有正确的权限。当使用ACCESS数据库时,不仅要给文件...
  • chyonglong
  • chyonglong
  • 2007年05月22日 13:39
  • 1347

access 报 "操作必须使用一个可更新的查询" 错误

    最近解决一个小问题需要用到Access数据库,很简单的数据库操作,就是插入操作,表字段就两个,name和value,但是奇怪的是总是报insert 语法错误。经过一番试验,估计value是Ac...
  • jx1228
  • jx1228
  • 2007年04月12日 10:20
  • 1247

Microsoft JET Database Engine 错误 '80004005' 操作必须使用一个可更新的查询。问题解决办法

问题如下:无法显示网页试图访问的网页出现问题,无法显示。请尝试执行下列操作:单击刷新按钮,或稍后重试。 打开 localhost 主页,然后查找与所需信息相关的链接。 HTTP 错误 500.100 ...
  • HIGLC
  • HIGLC
  • 2009年12月13日 02:08
  • 1944

错误"操作必须使用一个可更新的查询"原因及解决办法

错误信息:Microsoft OLE DB Provider for ODBC Drivers error 80004005 [Microsoft][ODBC Microsoft Access 97 ...
  • memeng2003
  • memeng2003
  • 2005年08月31日 16:31
  • 593

Access update语句 提示 "操作必须使用一个可更新的查询"

当在access中使用update语句时如果遇到"操作必须使用一个可更新的查询"提示信息,通常时权限设置问题但是有一种情况非常特殊,举例如下:表A(col1, col2) 表B(col1, col2...
  • bingdian37
  • bingdian37
  • 2007年09月24日 19:56
  • 9508

C#ADO连接修改Paradox表时“操作必须使用一个可更新的查询”错误的处理办法

现象: 在C#中使用ADO连接到Paradox表,使用Update修改Paradox表内数据时,系统提示“操作必须使用一个可更新的查询。”原因:Paradox无主索引的表在C#环境中不支持修改。解决办...
  • shxmh
  • shxmh
  • 2007年05月20日 15:56
  • 1675

C#使用oledb连接excel执行Insert Into语句出现“操作必须使用一个可更新的查询”的解决办法

我发生错误时的环境:Windows 7,Framework 4、0,Microsoft Office 2007,VS2010,c# WinForm;部分代码: s...
  • testcs_dn
  • testcs_dn
  • 2014年05月10日 18:37
  • 14722

Exception Details: System.Data.OleDb.OleDbException: 操作必须使用一个可更新的查询。

Exception Details: System.Data.OleDb.OleDbException: 操作必须使用一个可更新的查询。
  • loongsking
  • loongsking
  • 2014年06月18日 14:15
  • 3331
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:操作必须使用一个可更新的查询
举报原因:
原因补充:

(最多只允许输入30个字)