Private Sub Command14_Click() 
Command10.Enabled = True If Text6 = "" Then MsgBox "请输入票号", , "提示" 
Dim result As Integer Adodc1.RecordSource = "select * from 操作票 where [票号] ='" & Text6.Text & "'"
Adodc1.Refresh If Text30 = "" Then 
result = MsgBox("查无此票,是否查找其他记录?", vbOKCancel + vbQuestion) 
If result = 1 Then 
Text6 = "" 
Text6.SetFocus 
Else 
Unload Me 
End 
End If 
End If 
End Sub Adodc1与DataGrid的连接都已经连好了.为什么运行后,在DataGrid中不能显示数据库中所要的内容呢? 
Adodc1的相关设置: 
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Administrator\桌面\毕业设计2\操作票管理信息系统数据库\操作票.mdb;Persist Security Info=False" 
Recordsource = select * from 操作票 WHERE 票号='0' 
Text30为与Text6对比的文本框,运行时为隐藏状态.

解决方案 »

  1.   

    建议不要使用控件,专业点的方法都是使用ADO类  '定义数据对象变量
       Dim Conn, rs
       '创建ADO对象
       Set Conn = CreateObject("ADODB.Connection")   '连接对象
       Set rs = CreateObject("ADODB.Recordset")      '数据集对象
       '连接数据库
       Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
                 "C:\Documents and Settings\Administrator\桌面\" & _
                 "毕业设计2\操作票管理信息系统数据库\操作票.mdb"
       '查询数据库
       rs.Open "select * from 操作票 where 票号='" & Text6.Text & "'",conn,3,3
       '读取数据内容
       Msgbox rs("票号")
       '移动到下一条信息
       rs.MoveNext
       Msgbox rs("票号")   '关闭数据集
       rs.Close
       '关闭数据连接
       conn.close
       '清空对象
       Set rs=nothing
       Set conn=nothing
      

  2.   

    你用的是控件捆绑的吧,速度慢,而且控制不方便
    我提供的方法不是用ADO控件的,是ADO类,你改的是什么?
    用ADO类吗?你怎么用的?
      

  3.   

    是啊,运行到 Msgbox rs("票号")时显示错误啊..
      

  4.   

    这个是在别的窗体上试的,可是不知道怎么也有问题,调试发现不了错误
    Private Sub Form2_Load() 
      Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False ; User ID=sa Initial Catalog=操作票管理信息系统" 
      Adodc1.RecordSource = "select *  from 操作票 " 
      Adodc1.Refresh 
      Set DataGrid1.DataSource = Adodc1 
    End Sub 
    为何运行后,只有各列的名称显示,下面对应的内容无法显示呢? 
      

  5.   

    你的代码是什么(用ADO类的)?最好详细点
      

  6.   

    Set DataGrid1.DataSource = Adodc1.Recordset
    试试