【问题标题】:How can I increment a field value by 1 using SQL Query in MS Access如何使用 MS Access 中的 SQL 查询将字段值增加 1
【发布时间】:2020-12-30 18:36:16
【问题描述】:

我正在使用 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$' 

它们是 DateOfVisitCondition 以及 VisitingNumber(即某人访问该医院的次数)。问题是,我试图在每次执行UPDATE 语句时增加VisitingNumber,例如今天有人访问,我希望它为1,执行UPDATE 语句再次,我希望 1 增加。

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

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

任何帮助将不胜感激。 提前致谢!

【问题讨论】:

  • 代码应该作为问题中的文本发布,而不是图像。您希望每组患者就诊记录都有自己的编号顺序吗?患者变化时需要重新设置递增变量。
  • 好吧,很遗憾我无法发布代码,因为在 Automation Anywhere 上它是一个拖放命令列表,所以我无法真正粘贴它们,我试过了。这就是为什么我张贴了一张它的照片。上次你试图帮助我,但我失去了应用程序的许可证,我无法继续,这就是为什么现在我回来了,你说得对,我希望每个病人都有自己的编号序列,比如如果有 3 个条目,2 个人,但一个访问了两次,我希望这个人的 VisitingNumber 为 2,另一个人为 1。
  • 正如我所说,当患者发生变化时重置递增变量。这可能涉及保存患者 ID 并与记录中的患者 ID 进行比较的变量。当它们不匹配时,重置增量以及患者 ID 变量。我对 AutomationAnywhere 一无所知。我会使用 VBA。
  • 是的,这正是我所需要的。我已经很久没有使用VBA了,我什至忘记了它。我可能会忘记那个 VisitingNumber 以防它阻止我完成这件事,但感谢您的帮助,非常感谢。

标签: ms-access insert increment rpa automationanywhere


【解决方案1】:

不确定提到的变量方面,但碰撞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)

希望这是有道理的。

【讨论】:

  • 感谢您的帮助。据我记得,我试过“VisitingNumber + 1”,但是当数据被传输时,它被传输为“VisitingNumber + 1”,但我想我是用单引号做的,不记得了,我会试试服务器在 AutomationAnywhere 中恢复后立即再次执行此操作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-28
  • 2015-06-05
  • 1970-01-01
相关资源
最近更新 更多