2017-07-31 115 views
1

我试图删除找到的记录集中的一个值,而不是整个记录。 在这种情况下,我想删除:删除记录集中的特定值,不是整个记录

[" & TempVars("Software") & "]='" & TempVars("Version").Value & "'" 

它发现没有错误的记录。它只是删除了我不想要的整个记录​​。我只需要删除软件版本。

这是我的代码:

Dim rst0 As Recordset 
    Set rst0 = CurrentDb.OpenRecordset("SoftwareLicenses", dbOpenDynaset) 

    rst0.FindFirst "[SWID] = " & TempVars("SWID").Value & " AND [EmpID] = " & TempVars("EMPID").Value & " AND [SWVersion]= '" & TempVars("Version").Value & "'" 

    rst0.Delete 
    rst0.Close 
    Set rst0 = Nothing 


    Dim rst2 As Recordset 
    Set rst2 = CurrentDb.OpenRecordset("EmpSWDetails", dbOpenDynaset) 

    rst2.FindFirst "[EmpID] = " & TempVars("EMPID").Value & " AND [" & TempVars("Software") & "]='" & TempVars("Version").Value & "'" 

    rst2.Delete 
    rst2.Close 
    Set rst2 = Nothing 

你的帮助是非常赞赏。

+0

我想可能是我想尝试使用.Edit“RST2![&TempVars的(”软件“)] =‘’但我在收集错误得到一个项目并非如此,它似乎并不希望即使当我将它转换为常规变量时,它也会将其纳入。 –

+0

您无法删除记录中的单个字段 - 这样做没有意义。是否要设置字段为'NULL'? – YowE3K

回答

0

而不是删除我编辑它的字段值,正确的方式在记录集中声明变量。

rst2.Edit 
rst2.Fields(Software) = ""