我要在程序一开始就打日期写入每个表的第二个字段,我的代码是这样的
Dim j As String, k As Integer
 Dim str2 As String, mysql As String
 Dim bb As Long
 rs.close
 Close #1
 str2 = Dir(App.Path & "\data\datasystem.ini", 3)     '测试是否有此文件
 If str2 <> "" Then
    Open App.Path & "\data\datasystem" For Binary As #1
    Get #1, 1, j
     If j = " " Then
       k = 1
       If k = 1 Then
          Call d(1)
         For bb = 1 To 2920478
           mysql = "Update lc  Set 支出日期 = MonthView1.Value Where ID = bb"
           rs.Execute ("mysql")
           If rs.EOF Then
              rs.MoveNext
           End If
         Next
         k = 2
         If k = 2 Then
            Call d(2)
           For bb = 1 To 2920478
             mysql = "Update lc  Set 收入日期 = MonthView1.Value Where ID = bb"
             rs.Execute ("mysql")
             If rs.EOF Then
                rs.MoveNext
             End If
           Next
           k = 3
           If k = 3 Then
              Call d(3)
              For bb = 1 To 2920478
                mysql = "Update lc  Set 借出日期 = MonthView1.Value Where ID = bb"
                rs.Execute ("mysql")
                If rs.EOF Then
                   rs.MoveNext
                End If
              Next
              k = 4
              If k = 4 Then
                 Call d(4)
                 For bb = 1 To 2920478
                   mysql = "Update lc  Set 归还日期 = MonthView1.Value Where ID = bb"
                   rs.Execute ("mysql")
                   If rs.EOF Then
                      rs.MoveNext
                   End If
                 Next
                 k = 5
                 If k = 5 Then
                    Call d(5)
                    For bb = 1 To 2920478
                      mysql = "Update lc  Set 借入日期 = MonthView1.Value Where ID = bb"
                      rs.Execute ("mysql")
                      If rs.EOF Then
                         rs.MoveNext
                      End If
                    Next
                    k = 6
                    If k = 6 Then
                       Call d(6)
                       For bb = 1 To 2920478
                         mysql = "Update lc  Set 还款日期 = MonthView1.Value Where ID = bb"
                         rs.Execute ("mysql")
                         If rs.EOF Then
                            rs.MoveNext
                         End If
                       Next
                    End If    'if k=6
                End If        'if k=5
              End If          'if k=4
           End If             'if k=3
         End If               'if k=2
      End If                  'if k=1
    End If                    'if j=""
    Put #1, 1, 10
    Close 1
  End If                      'if str2<>""
运行时它说"未找到方法或数据成员"(rs.Execute)
怎么回事呀
还有呀,这段代码有没有更的方法实现

解决方案 »

  1.   

    rs.Execute中的rs如果是recordset对象的话,那recordset对象是没有execute方法的
    也不知道你从什么抄来这一段代码的,我昨晚没睡好,不敢看,头晕
      

  2.   

    不是拉
    这段代码是我写的
    那个rs.Execute那一句是我从这个论坛上看到的
    里面说在vb里运行SQL语句是用这个方法,但是它没有过写这个方法是属于那个对象的
    对,我的rs是recordset,那我应该怎么写
    帮帮我吧
      

  3.   

    用CONNECTION对象执行EXECUTE方法。
      

  4.   

    execute是connection对象的方法, 
    If rs.EOF Then
    rs.MoveNext
    End If
    看到这句我就没心情看你的代码了,如果有高人改就帮忙顶一下而已
      

  5.   

    看到都晕了
    这样写code,结构性不好
      

  6.   

    给你个思路吧:
    for '表循环
       '得到表的第二个字段的名称
       conn.execute "update [" & 表名 & "] set [" & zdm & "]='" & 日期 & "' where id=bb"
    next
      

  7.   

    对了,看样子你的id肯定是字符性的。后面改成id='bb'
      

  8.   

    我的ID是自动编号的字段呀
    我的库里面有好几个表呀
    我都要改呀
    for '表循环,怎么写呀
    do while rs.eof
    这样写吗
      

  9.   

    那要得到第二个字段的名字干什么。
    下面那个SQL语句里不是写了对哪个字段名进行修改吗
    我的第二个字段名就是"表名"+日期