在Access数据库中,有一个名为“Demande”的表。我想读取“Numero de Commande”列中的所有记录,并读取该列中最大的数字,以便可以将该数字用于下一个新记录。
所以这是我的桌子:
关键索引适用于Numero de Commande。
这是我的当前代码:
Dim highestInt as Integer
Dim newNumeroCommande as Integer
Set currentDatabase = CurrentDb
Set rstDemande = currentDatabase.OpenRecordset("Demande")
' Find the highest integer in the column "Numero de Commande"
newNumeroCommande = highestInt + 1
rstDemande.AddNew
rstDemande("Numero de Commande").Value = newNumeroCommande
rstDemande.Update
多谢您的协助。
最佳答案
只要该列仅包含不带字母的数字值,则可以使用:
NewNumeroCommande = Dmax("[Numero de Commande]", "Demande") + 1
注意:这不是我推荐的方法,而只是Access的内置选项,如果可能的话,您可以使用自动编号功能来避免麻烦,或者可以使用单独的“计数器”表来记录最高的记录号,当您希望创建另一个表,则可以锁定该表,将值增加一个(然后使用此表),然后释放该锁定,这在多用户环境中会更有效。