VB中不用adodc控件,如何与datagrid控件绑定?

用adodc控件时,速度特别慢,而且如果一个页面即有datagrid又有datacombo,那么可能需要好几个adodc控件,这时对程序非常不好。
microsoft公司推荐用ado编程,那是适合各种语言。
对于VB+Access则是下面这种方法。
 
在mudules中定义
Public cn As New ADODB.Connection '牢记最后要用到 cn.Close
Public rs1 As New ADODB.Recordset
Public rs2 As New ADODB.Recordset
 
然后,在form_load中打开
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb"
If rs1.State <> adStateClosed Then rs1.Close
rs1.CursorLocation = adUseClient'如果与datagrid使用,此句非常重要
rs1.Open "select * from 品种", cn, adOpenKeyset, adLockOptimistic
 
此时打开数据库的操作即完成,如果与datagrid相链接,则
Set DataGrid1.DataSource = rs1
 
如果与datacombo相链接,则
Set DataCombo2.RowSource = rs1
DataCombo1.ListField = "字段名" '很重要,不要用set


记得最终结束程序时:
rs1.close 
cn.close
posted @ 2017-03-31 10:46  一天从晚上开始  阅读(1384)  评论(0编辑  收藏  举报