如何在MS Access中使用SQL查询将字段值加1

问题描述

我正在使用Automation Anywhere客户端进行项目。 我正在使用SELECTUPDATE语句将数据从MS Excel提取到MS Access,但是数据可能会重复自身,在这种情况下,我想UPDATE只有3个字段,这些是我正在使用的语句

    INSERT INTO $vDiagnosis$ 
    VALUES ('$vID$','$vFirstName$','$vLastName$','$vGender$','$vPhone$','$vAge$','$vDateOfVisit$','$vCondition$','$vInsuranceCo$','$vInsuranceNr$','$vVisitingNumber$')
    
    Update $vDiagnosis$ 
    SET DateOfVisit = '$vDateOfVisit$',Condition = '$vCondition$' 
    WHERE ID = '$vID$' 

分别是访问日期条件访问次数(这是某人去该医院的次数)。问题是,我每次尝试执行UPDATE语句时都会尝试增加 VisitingNumber ,例如,某人今天访问,我希望它为1,{{1} }语句再次执行,我希望该1递增。

我尝试制作一个变量,并在每次执行UPDATE时将其递增,但是每当它循环并转到下一个UPDATE语句时,即使继续插入新变量,它也会继续递增值。

A preview of the work I'm trying to do on Automation Anywhere

任何帮助将不胜感激。 预先感谢!

解决方法

不确定所提到的变量方面,但是增加VisitingNumber的数量应该可以做到:

UPDATE $vDiagnosis$ 
   SET DateOfVisit = '$vDateOfVisit$',Condition = '$vCondition$',VisitingNumber = VisitingNumber + 1
 WHERE ID = '$vID$' 

对于插入,visitingNumber的值可以简单地为1,不带变量,如下所示:

INSERT INTO $vDiagnosis$ 
VALUES ('$vID$','$vFirstName$','$vLastName$','$vGender$','$vPhone$','$vAge$','$vDateOfVisit$','$vCondition$','$vInsuranceCo$','$vInsuranceNr$',1)

或者更好的是,也许可以在表级别将默认值指定为1,然后根本不需要将其包含在插入查询中。 (将在插入时设置为1)

希望如此。