二十世纪中国文化名人:有没有VB高手帮小妹一下呀?
Dim connectionstring As String
Dim conn As New ADODB.Connection
Dim sql As String
Dim rs As New ADODB.Recordset
connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data.mdb"
conn.Open connectionstring
sql = "select * from 收电报"
rs.Open sql, conn, adOpenKeyset, adLockPessimistic
Debug.Print rs.State
Set DataGrid1.DataSource = rs
End Sub
用其它控件都可以显出rs中是数词有数据集的,但datagrid1就显不出数据!有哪位高手帅哥给个准确的答案?
小妹谢了先!
你少加一句:
Rs.CursorLocation = adUseClient
修改后的代码为:
Private Sub Form_Load()
Dim connectionstring As String
Dim conn As New ADODB.Connection
Dim sql As String
Dim rs As New ADODB.Recordset
connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data.mdb"
conn.Open connectionstring
sql = "select * from 收电报"
rs.CursorLocation = adUseClient
rs.Open sql, conn, adOpenKeyset, adLockPessimistic
Debug.Print rs.State
Set DataGrid1.DataSource = rs
End Sub
实话说,我也不太清楚为什么VB一定要加这一句,可能是因为:
〔说明〕资料来源:MSDN
使用 Set 语句设置 DataSource,如下所示:
Set Text1.DataSource = ADODC1
注意 两个旧的控件,Data 控件和 RemoteData 控件,可以作为数据源使用,然而,您不能在运行时将另一个控件或对象的DataSource 属性设置为这两个控件之一。例如,下列代码将会失败:
Set Text1.DataSource = Data1 ' 将会失败!您不能在运行时将DataSource
' 设置为一个内部 Data 控件。
要将 Data 控件或 RemoteData 控件之一作为数据源使用,您只能在设计时设置绑定控件的 DataSource 属性。
DataGrid1不是为ADO设计的,所以有这个问题。