Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何同步SQL Server 2012中同时执行的存储过程的多个实例?_Sql_Sql Server_Database_Stored Procedures - Fatal编程技术网

如何同步SQL Server 2012中同时执行的存储过程的多个实例?

如何同步SQL Server 2012中同时执行的存储过程的多个实例?,sql,sql-server,database,stored-procedures,Sql,Sql Server,Database,Stored Procedures,概述: 在我的场景中,用户上传一个需要写入数据库的excel文件,我为每个上传的文件分配一个batch_id,该batch_id被写入我表格每行的最后一列,如图所示 借助此batch_id列,我将能够分离哪些行属于哪个文档。(例如:如果batch_id=1,则这1000行属于文档1) 问题: 考虑两个用户USER1和USER2同时执行此存储过程,而存储过程在属于文档1的所有行中写入BATCHYID=1,同时将插入属于文档2的行,从而在剩余的剩余行中写入写BotChyId=1或BATCHYID=

概述: 在我的场景中,用户上传一个需要写入数据库的excel文件,我为每个上传的文件分配一个batch_id,该batch_id被写入我表格每行的最后一列,如图所示

借助此batch_id列,我将能够分离哪些行属于哪个文档。(例如:如果batch_id=1,则这1000行属于文档1)

问题: 考虑两个用户USER1和USER2同时执行此存储过程,而存储过程在属于文档1的所有行中写入BATCHYID=1,同时将插入属于文档2的行,从而在剩余的剩余行中写入写BotChyId=1或BATCHYID=2的冲突。< /P> 不完美的解决方案:
若要一次对一个文档执行存储过程,请在完成后对文档2执行存储过程,但这会让用户等待当前执行完成,这是我不希望发生的。

您始终可以并行执行单个SP。这不会影响逻辑。请尝试。

下周,当您查看数据库时,您如何知道文档“1”的含义?您使用的是MySQL还是MS SQL Server?(不要标记未涉及的产品。)@jarlh这是一个错误,请解释在MYSQL的情况下如何实现这一点。@MikeSherrill'CatRecall'批处理id列有一个对父表的外键引用,该父表具有如下属性(id、用户id、用户名、状态、批处理id)在父表的帮助下,我可以识别谁上传了这些行。@jarlh我已经删除了MYSQL标记。这并不能回答问题。使用“添加评论”链接询问此类问题。请将此内容写在评论部分,非常感谢。谢谢。。!!我还没有50点的声望来补充我对这个问题的评论。