Sql 分布式应用程序-单用户更新数据库?

Sql 分布式应用程序-单用户更新数据库?,sql,sql-server,Sql,Sql Server,我有一个应用程序,一次最多可供22个用户使用,它可以从API中提取数据。在后台,应用程序还将一些数据复制到SQL数据库中,但我遇到了获取重复记录的问题,因为有多个应用程序试图同时更新数据库 我曾尝试在另一个表中使用“TimeStamp”来查看数据库上次更新的时间,但这并不能解释正在进行的新更新 回到Microsoft Access world,我会使用“SeeDatabaseChanges”来防止记录重复,但有没有办法确保只有一个应用程序实例更新数据库或更好地运行该方法 提前感谢仅在高层:为了避

我有一个应用程序,一次最多可供22个用户使用,它可以从API中提取数据。在后台,应用程序还将一些数据复制到SQL数据库中,但我遇到了获取重复记录的问题,因为有多个应用程序试图同时更新数据库

我曾尝试在另一个表中使用“TimeStamp”来查看数据库上次更新的时间,但这并不能解释正在进行的新更新

回到Microsoft Access world,我会使用“SeeDatabaseChanges”来防止记录重复,但有没有办法确保只有一个应用程序实例更新数据库或更好地运行该方法


提前感谢

仅在高层:为了避免重复-必须定义重复并在追加/写入之前检查它

检查重复可能不是小事;它是姓、名还是必须是地址的每个字段?或者是更多字段…等等

因此,在导入暂存临时表中可能会有一些附加处理来保存新数据以确定重复项,然后是最后一步,将新记录追加/插入到永久表中


实际的实现非常依赖于应用程序的实际工作方式和实际涉及的数据……

亲爱的Mac,欢迎使用stackoverflow。首先,我建议您发布代码,展示如何更新数据库。你用哪种语言?作为一种解决方案,根据您发布的内容,我可以建议您在更新期间锁定数据库,以避免其他用户更新相同的内容。如果你发布一点代码,你将有更好的机会得到回应。谢谢。您使用的是哪种DBMS产品?“SQL”只是所有关系数据库使用的查询语言,而不是特定数据库产品的名称,解决方案很可能是特定于数据库的。请为您正在使用的数据库产品添加。如果要防止重复,请创建唯一约束。然后,如果出现错误,就处理它。我放弃了旧版本,正在寻找新方法的想法。(因此没有代码)。@a_horse_,没有名称-对不起,后端是MS SQL Server 2016。我以为我已经设置了一个“primarykey”字段,但它似乎没有强制执行Unique,这是我的疏忽。谢谢,谢谢。我接受了你说的话。并用它来防止重复。然后,我实现了一个“主用户”令牌,应用程序会根据quid生成来检查该令牌。这已对问题进行了排序,并确保在任何时候只有1个应用程序正在运行数据库更新。