我尝试使用以下代码建立与数据库的连接(MS Access)..但是我收到错误,因为“当前Recordset不支持更新。这可能是提供者或所选锁定类型的限制”
<html>
<head>
<title>Insertion</title>
<script type="text/javascript" language="JavaScript" >
function AddRecord(form) {
var cn = new ActiveXObject("ADODB.Connection");
var strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = C:\\Users\\deepakgopal\\Desktop\\Testing\\Database3.mdb";
cn.Open(strConn);
var rs = new ActiveXObject("ADODB.Recordset");
var SQL = "select count(*) from data";
rs.Open(SQL, cn);
alert(rs(0));
rs.AddNew
rs.Fields("VDI") = Request.Form("vdi");
rs.Fields("Staff") = Request.Form("staff");
rs.Update;
rs.Close();
cn.Close();
}
</script>
</head>
<body style="margin:0 auto;">
VDI: <input type="text" id="tname" name="vdi" />
<br />
Staff : <input type="text" id="tpwd" name="staff" />
<br />
<input type="button" id="btnsbt" name="btnsbt" value="Login" onclick="AddRecord()" /><br />
</body>
</html>
答案 0 :(得分:5)
您要检索的Recordset只包含一行,其中一列包含表中所有记录的计数(COUNT(*)
)。该Recordset不包含其他信息且不可更新。
如果要向表中添加记录,则需要.Close
该记录集,然后使用SELECT * FROM data
之类的SQL命令重新打开它(注意:没有COUNT()
)。这应该允许您使用.AddNew
和.Update
来插入新记录。