Asp.net 如何在具有导入功能的SQL Server上处理并发场景?

Asp.net 如何在具有导入功能的SQL Server上处理并发场景?,asp.net,asp.net-mvc,sql-server-2008,concurrency,Asp.net,Asp.net Mvc,Sql Server 2008,Concurrency,我已经在我的web应用程序上实现了导入功能,使用该功能,我将把用户详细信息记录插入到user表中。但是,当我们在浏览器的两个不同选项卡中打开导入表单(视图),然后一次上载具有两个表单中相同记录的相同Excel工作表,最后单击提交按钮将这些记录插入表中时,两个进程同时运行,并插入一些重复记录 那么,如何处理这种并发场景呢?您使用什么命令/脚本插入记录?当发现重复记录时,您希望发生的逻辑是什么?如何确定两条记录是相同的?这与并发性无关,而是与数据完整性有关。什么会阻止同一用户一个接一个地上传两次?您

我已经在我的web应用程序上实现了导入功能,使用该功能,我将把用户详细信息记录插入到
user
表中。但是,当我们在浏览器的两个不同选项卡中打开导入表单(视图),然后一次上载具有两个表单中相同记录的相同Excel工作表,最后单击提交按钮将这些记录插入表中时,两个进程同时运行,并插入一些重复记录


那么,如何处理这种并发场景呢?

您使用什么命令/脚本插入记录?当发现重复记录时,您希望发生的逻辑是什么?如何确定两条记录是相同的?这与并发性无关,而是与数据完整性有关。什么会阻止同一用户一个接一个地上传两次?您的记录需要某种类型的唯一标识符,并使用该标识符确定是否应插入或更新记录。感谢您的回复。当我在列名(如“LevelName”)上应用唯一标识符,然后停止添加重复记录,但问题在我的系统中,我将删除用户作为软删除,而不是硬删除,所以在这种情况下,如果第二次插入具有相同级别名称的同一用户,则在导入时出现唯一键问题,然后出现问题