回 帖 发 新 帖 刷新版面

主题:VB6 + Access的问题(不能更改Access数据库中的数据)

先连接Access数据库:

Public conn As New ADODB.Connection
Public rs As New ADODB.Recordset
Public cmd As New ADODB.Command
Public sql As String

Sub Main()
Dim connstr As String
connstr = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & "D:\" & "database.mdb"
conn.Open connstr
cmd.ActiveConnection = conn
Form1.Show
End Sub


使用ADODB.Command对象执行SQL语句查找记录:
sql = "select * from data where 学号='" & Trim(Text1.Text) & "'"
cmd.CommandText = sql
Set rs = cmd.Execute

以上这样做可以查到并应用记录数据,但不能更改,一旦使用
rs.Fields(2) = True
rs.update
这样的语句就出错,但用rs.open方法执行一次SQL语句就可以用上述语句实现记录的更改,但rs.open方法只能执行一次SQL语句

请问应该怎样改才能使Set rs = cmd.Execute得到的Recordset变量rs能用Field属性的赋值和Update方法就可以更改Access数据库中的记录?

回复列表 (共1个回复)

沙发

使用ADODB.Recordset对象执行SQL语句查找记录:
Set rs = new ADODB.Recordset
sql = "select * from data where 学号='" & Trim(Text1.Text) & "'"
rs.open sql,conn,1,3


rs.Fields(2) = True
rs.update

rs.close

我来回复

您尚未登录,请登录后再回复。点此登录或注册