奇怪!数据库不能更新!Why?
本来一直没有问题,可昨日重装系统之后,就出现了一个很奇怪的问题,ASP中数据库不能更新了!
不论是用ODBC还是OLEDB,也不论是使用数据源还是连接串,而且不管CursorType、LockType和CursorLocation设为什么,数据库就是不能更新。
查看日志文件,里面有这样一条:"POST /aaa.asp?|12|80004005|[Microsoft][ODBC_Microsoft_Access_Driver]_不能更新。数据库或对象为只读。 HTTP/1.1" 500 426
我可以肯定数据库没有被锁定、占用和设为只读,因为用在VB中用相似的代码可以更新。
新装系统为Win2000Pro SP2、Office2000、VS6 SP5,其他什么都没装。以装过两遍都如此,难道这样装就会有问题?
<!--#include file="adovbs.inc"-->
<%
Set cn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
strDSN = "FILEDSN=abc.dsn"
strSQL = "select * from ccc"
cn.Open strDSN
rs.Open strSQL, cn, adOpenForwardOnly, adLockOptimistic
rs.Fields("aaa") = "2" '问题就出在这里
rs.Fields("bbb") = "1" '如果把这两行注释掉,就没问题
rs.Update '
rs.Close
cn.Close
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</head>
<body>
<%=rs.Fields("aaa")%>
</body>
</html>