用SQL语句添加记录的DAO记录集用于下一个循环
问题描述:
我知道这很愚蠢,但我无法弄清楚这一点。下面的当前代码将满足条件的记录集插入到TxtBox1中,然后通过在表中重新写入满足TxtBox2条件的新记录集来擦除数据。用SQL语句添加记录的DAO记录集用于下一个循环
我需要的是将TxtBox1中的记录集会议条件插入到表中,然后在循环时将记录集的下一个迭代添加到表中。 (不超过写入/删除第一返回记录集)
Dim db As Database
Dim rst As DAO.Recordset
Dim rrow As Integer, strCmboNmbr As Integer
Dim start As Object
Set db = CurrentDb()
strCmboNmbr = (Left(Forms("Match Summary").Controls("CmbNum").Value, 1))
For rrow = 1 To strCmboNmbr 'lets say 2
Set start = Forms("Match Summary").Controls("TxtBox" & rrow) 'TxtBox1, TxtBox2, etc.
DoCmd.RunSQL "SELECT [Oracle JE].* INTO Unmatched FROM [Oracle JE] WHERE [Oracle JE].[Account Code]=" & start 'This is a MAKE Table Query
Next rrow
答
如果你不希望覆盖你需要一个追加的表中的第一行程后:
If rrow = 1 then
DoCmd.RunSQL "SELECT [Oracle JE].* INTO Unmatched FROM [Oracle JE]
WHERE [Oracle JE].[Account Code]=" & start
Else
DoCmd.RunSQL "INSERT INTO Unmatched SELECT [Oracle JE].* FROM [Oracle JE]
WHERE [Oracle JE].[Account Code]=" & start
End
理想的情况下,你会有一个预定义的表。然后你可以添加一个主键和索引给它,先清除它然后运行一系列附加。
Thanxs。我将使用必填字段创建一个预定义的表结构,添加一个主键,对其进行索引,并在执行此步骤之前清除它,就像您所建议的一样。 Thanxs,再次。 –