各位好心的大虾,帮帮忙!
俺在VB6里做练习,我写了如下代码,感觉没哪儿错了,
但执行时老报错:“From子句语法错误”。添加引用我也搞了啊,都是用的ADO2.7的版本。
我晕啊,这是为什么啊?
难道是传说中的人品问题?各位大虾帮帮我啊,一定高分重谢!
在线等待ingPrivate Sub Form_Load()    frmFinancing.lblTime.Caption = "好心提醒你,今天是" + Format(Date)
  
    Dim strConn As String         'Define a string to connect the database
    strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & _
        "\data\dbFinance2.mdb"    Set cn = New ADODB.Connection 'Create a Connection object
    cn.ConnectionString = strConn
    cn.Open                       'Open a connection
   
    Dim strSQLDate As String          '定义一条SQL语句,使之从money表中读出所有数据到DataGrid控件中
        strSQLDate = ""
        strSQLDate = strSQLDate & "Select mDate    As 日期,                    " & vbCrLf
        strSQLDate = strSQLDate & "       mBalance As 所剩米米,               " & vbCrLf
        strSQLDate = strSQLDate & "       mExpend  As 当日支出,               " & vbCrLf
        strSQLDate = strSQLDate & "       mIncome  As 当日收入                " & vbCrLf
        strSQLDate = strSQLDate & "From   money                                   "
      
    Set rs = New ADODB.Recordset      'Create a Recordset object
    rs.Open strSQLDate, cn, 1, 1      'Use Connection Object to open the record
    If Not rs.EOF And Not rs.BOF Then 'Send the data to the datagrid
        Set dgData.DataSource = rs
    End If
    rs.MoveNextEnd Sub谢谢啊!!!

解决方案 »

  1.   

    各位好心的大虾,帮帮忙!
    俺在VB6里做练习,我写了如下代码,感觉没哪儿错了,
    但执行时老报错:“From子句语法错误”。添加引用我也搞了啊,都是用的ADO2.7的版本。
    我晕啊,这是为什么啊?
    难道是传说中的人品问题?各位大虾帮帮我啊,一定高分重谢!
    在线等待ingPrivate Sub Form_Load()  
        Dim strConn As String         
        strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & _
            "\data\dbFinance2.mdb"    Set cn = New ADODB.Connection 
        cn.ConnectionString = strConn
        cn.Open                       
       
        Dim strSQLDate As String        
            strSQLDate = ""
            strSQLDate = strSQLDate & "Select mDate    As 日期,          " 
            strSQLDate = strSQLDate & "       mBalance As 所剩米米,      " 
            strSQLDate = strSQLDate & "       mExpend  As 当日支出,      " 
            strSQLDate = strSQLDate & "       mIncome  As 当日收入       " 
            strSQLDate = strSQLDate & "From   money                      "
          
        Set rs = New ADODB.Recordset      
        rs.Open strSQLDate, cn, 1, 1      
        If Not rs.EOF And Not rs.BOF Then
            Set dgData.DataSource = rs
        End If
        rs.MoveNextEnd Sub
      

  2.   

    怎么没人理我啊我刚看了以前的帖子

    我的表名是用的money啊
    这难道也是Access的保留字吗?
      

  3.   

    那你试试:
    select * from [money] 
    能通过的话说明money是ACCESS的保留字
      

  4.   

    也许你组合SQL语句时没有注意字条串之间的空格
      

  5.   

    还有为什么用vbCrLf?
    看不明白
      

  6.   

    moneY明显是关键字来的啊,用[]括起来
      

  7.   

    代码没有问题,你在access中间建立视图把select * from Money写进去,你会发现报错,所以改个表名。
      

  8.   

    嘿嘿,我也是,用order也不行,后面加个s就好了 :)
      

  9.   

    不要加vbCrLf你的数据库是低能的.去了试试
      

  10.   

    money不能用,是保留字,还是换个表名吧
      

  11.   

    我很晕
    我试了,居然money也是关键字
    什么年代嘛
    vbCrLf没错啦,那是方便调试SQL语句用的