为什么说:"操作必须使用一个可更新的查询"?

编程小战 2002-10-25 04:38:46
出现下面错误:

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'

[Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询。

源文件如下:

<!--#INCLUDE FILE="ADOVBS.INC"-->
<%
Dim Cnn,Rst,DSN,DATABASE,SQLSTR

DATABASE=Server.Mappath("NORTHWIND.MDB")

DSN="DRIVER={Microsoft Access Driver (*.mdb)};DBQ="+DATABASE

Set Cnn=Server.CreateObject("ADODB.Connection")

With Cnn
.CommandTimeout=120 '连接超时
.Mode=adModeReadWrite '读写模式
.CursorLocation=adUseClient '使用客户端光标
.Open DSN
End With

Set Rst=Server.CreateObject("ADODB.RecordSet")

With Rst
.ActiveConnection=Cnn '记录集的数据库连接
.CursorType=adOpenStatic '静态光标
.LockType=adLockOptimistic '乐观锁定
.CacheSize=100 '记录缓冲数量
End With

SQLSTR="Select * From 产品"

Rst.Open SQLSTR

If Not Rst.EOF Then

Rst("库存量")=Rst("库存量")+10

Response.Write Rst("产品名称")&":"&Rst("库存量")

End If

Rst.Close
Cnn.Close
%>

我安了.Net Framework,Ado 2.7后才出现这个问题,OS为Win2000 Adv Server!
...全文
8 点赞 收藏 3
写回复
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
qevan 2002-11-25
这个问题已经见过好多次了,
看这个FAQ:
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=564
回复
编程小战 2002-10-26
是Rst.Update出错了!上面的代码将它写掉了!
以前在IIS 5.0里运行正常的程序,在升及到了.NET后,很多都是RecordSet的Update方法调用出错!
回复
popcode 2002-10-25
数据库没有写权限
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告