Private Sub Form_Load()
Dim adocon As New ADODB.Connection
Dim adors As New ADODB.Recordset
adocon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\文件编码.mdb;Persist Security Info=False"
adors.Open "select * from 文件信息", adocon, adOpenStatic, adLockOptimistic
Set adors = adocon.Execute("select * from 文件信息")
Set DataGrid1.DataSource = adors
DataGrid1.Refresh
End Sub就是要实现在加载窗口的时候,把数据库的内容显示到datagrid1
运行后提示the rowset is not bookable
这是什么意思,为什么会这样
Dim adocon As New ADODB.Connection
Dim adors As New ADODB.Recordset
adocon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\文件编码.mdb;Persist Security Info=False"
adors.Open "select * from 文件信息", adocon, adOpenStatic, adLockOptimistic
Set adors = adocon.Execute("select * from 文件信息")
Set DataGrid1.DataSource = adors
DataGrid1.Refresh
End Sub就是要实现在加载窗口的时候,把数据库的内容显示到datagrid1
运行后提示the rowset is not bookable
这是什么意思,为什么会这样
Dim adocon As New ADODB.Connection
Dim adors As New ADODB.Recordset
adocon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\文件编码.mdb;Persist Security Info=False"
adors.Open "select * from 文件信息", adocon, adOpenStatic, adLockOptimistic
Set DataGrid1.DataSource = adors
adors.requery
DataGrid1.Refresh
End Sub
还是不行啊
虽然没提示错误,但是datagrid没显示数据
现在可以了
能不能告诉我为什么
adors.requery 起什么作用
为啥加了 Set adors = adocon.Execute("select * from 文件信息") 就不行了
为啥后面加上adors.CursorLocation = adUseClient就OK了
Dim adocon As New ADODB.Connection
Dim adors As New ADODB.Recordset
adocon.CursorLocation = adUseClient
adocon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\文件编码.mdb;Persist Security Info=False"
adors.Open "select * from 文件信息", adocon, adOpenStatic, adLockOptimistic
'adors.Open "select * from itb1", adocon, adOpenStatic, adLockOptimistic
Set adors = adocon.Execute("select * from itb1")
Set DataGrid1.DataSource = adors
'DataGrid1.Refresh
End Sub
adors.CursorLocation = adUseClient 是设置为客户端游标.
Set adors = adocon.Execute("select * from 文件信息") 多余,前面有句open 了,这是两种不同的方式.
这句也不要
Private Sub Form_Load()
Dim adocon As New ADODB.Connection
Dim adors As New ADODB.Recordset
adocon.CursorLocation = adUseClient '加上这句
adocon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\文件编码.mdb;Persist Security Info=False"
'adors.Open "select * from 文件信息", adocon, adOpenStatic, adLockOptimistic'删除这句
Set adors = adocon.Execute("select * from 文件信息")
Set DataGrid1.DataSource = adors
'DataGrid1.Refresh '删除这句
End Sub
adors.CursorLocation = adUseClient
和
adocon.CursorLocation = adUseClient
有何区别
另外
adors.requery和adors.update有和区别
谢谢楼上的两位
adors.requery一般用于adors.update之后.就是记录集中记录改变之后可以重新方便的调用数据库中新的记录信息.
这里你没改什么,不用就是了
understand?看ADO帮助吧...