注册 登录
编程论坛 VB6论坛

DataGrid1,MSHFlexGrid1为什么只有后者能显示数据,前者为什么不显示,使用ADODC设置可以连接数据库并显示

wxflw 发布于 2013-11-25 00:14, 462 次点击
If cn.State = adStateOpen Then cn.Close
    If rs.State = adStateOpen Then rs.Close
    cn.Open "provider=microsoft.ace.oledb.12.0;Data Source=" & App.Path & "\库.accdb;Jet OLEDB:Database Password=111;"
    sql = "select * from 系统数据表 "
    rs.Open sql, cn, 3, 3
   If rs.EOF And rs.BOF Then
      If cn.State = adStateOpen Then cn.Close
      If rs.State = adStateOpen Then rs.Close
      Exit Sub
   Else
      Set DataGrid1.DataSource = rs
      'DataGrid1.Refresh
      Set MSHFlexGrid1.DataSource = rs
   'End If
If cn.State = adStateOpen Then cn.Close
If rs.State = adStateOpen Then rs.Close
1 回复
#2
chen35232013-11-27 15:10
下面的是我用的程序:
Private Sub Form_Activate()
  Dim s As String
  s = App.Path & "\assart.mdb"   '把数据库放在编程的文件夹内,安装时把数据库放在文件夹内
  
  Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
  "Data Source =" + Chr(34) + s + Chr(34) & ";Jet OLEDB:Database Password=chen23;"  '打开有密码数据库,密码为“chen23”

'"Data Source =" + Chr(34) + s + Chr(34) & ";Persist Security Info=False"  '打开无密码数据库


Dim SQL As String
      SQL = "SELECT * FROM 评估审核表  "
       = adCmdunknow               
      Adodc1.RecordSource = SQL
      Adodc1.Refresh

   
        Set DataGrid1.DataSource = Adodc1
End Sub
没有出现你说的情况。
1