VB里面的rs.Open a2,conn, 1, 3

来源:百度知道 编辑:UC知道 时间:2024/05/17 04:25:35
Private Sub Command1_Click()
If Option1.Value = True Then
a2 = "select * from 图书借阅信息表 where 是否归还='未'and 借阅人编号='" + Text1.Text + "'"
rs.Open a2, conn, 1, 3
Set DataGrid1.DataSource = rs
DataGrid1.Refresh
Else
a2 = "select * from 图书借阅信息表 where 借阅人编号='" + Text1.Text + "'"
rs.Open a2, conn, 1, 3
Set DataGrid1.DataSource = rs
DataGrid1.Refresh
End If
End Sub

这段程序运行在TEXT中输个按Command查询很好``但在Text中重输个数时就报 实时错误3705说对象打开时不允许***作`也就是说只能在程序刚运行时第一次查询正常``再查就报错

要改得能随变查该怎么改??那汉字都是数据库里的表```

我觉得可能是你的RS打开后没有关的原因.

你把RS关了试试,

再就是你为什么要用1,3,
你用rs.Open a2, conn, 1, 1试一下.因为1,3是可改.而1,1是只读.

在vb 中,对于字符窜比较=有时会出现问题,最好用like试一下!

rs.open 打开
操作
rs.close

如果你只.open不.close的话就会弹出你说的错误。
还有一般不要用数字1,2,3,4。。
这样的话可读性比较差 还是用固定的代码来书写 虽然看着比较多 但是可读性就比较好了
只是建议。。