【发布时间】:2014-01-15 02:09:37
【问题描述】:
所以我正在做一个查询,当您单击一个按钮时,它会获取一个带有未分配数据字段的记录集,并将该记录集复制到具有新“分配版本”的同一个表中。
我希望我的数据库能够从原始未分配集创建不同/多个“分配版本”,这在我创建第一个分配集时效果很好,但是当我尝试创建一个新分配集时它会进入一个看起来完全随机的循环,它可以创建 10-1000 的新条目,我不知道是什么原因造成的。
抱歉,如果这令人困惑,查看代码可能会有所帮助
谢谢!
Dim rs1 As DAO.Recordset
Dim unionquery As String
Dim CURRENT_SOFTWARE_VERSION As String
CURRENT_SOFTWARE_VERSION = Me.Parent.[Software Version].Value
initialquery = "select [Test Script] , [PROC_CHECK_ID], [Software Version] from (FORMAL_CERT_PROCEDURE_TEST_SCRIPTS inner join FORMAL_CERT_PROCEDURE_CHECK on FORMAL_CERT_PROCEDURE_TEST_SCRIPTS.TEST_CASE_ID = FORMAL_CERT_PROCEDURE_CHECK.TEST_CASE_ID) inner join FORMAL_CERT_SOFTWARE_VERSION on FORMAL_CERT_PROCEDURE_TEST_SCRIPTS.TEST_CASE_ID = FORMAL_CERT_SOFTWARE_VERSION.TEST_CASE_ID where PROC_CHECK_ID=" & Me.PROC_CHECK_ID & " AND [Software Version]=""" & CURRENT_SOFTWARE_VERSION & """ "
Set rs1 = CurrentDb.OpenRecordset(initialquery, dbOpenForwardOnly)
Do Until rs1.EOF = True
Dim rs2 As DAO.Recordset
Set rs2 = CurrentDb.OpenRecordset( _
"SELECT * FROM FORMAL_CERT_PROCEDURE_TEST_SCRIPTS", _
dbOpenDynaset)
rs2.AddNew
rs2![Test Script] = rs1![Test Script]
rs2![PROC_CHECK_ID_FK] = rs1!PROC_CHECK_ID
rs2![Software_Version] = rs1![Software Version].Value
rs2![TEST_CASE_ID] = Me.TEST_CASE_ID
rs2.Update
rs2.Close
Set rs2 = Nothing
rs1.MoveNext
Loop
【问题讨论】:
标签: ms-access vba ms-access-2007