难题,请教大虾!!!!mssql可不可以这样?

时间:2021-07-05 08:34:23
多个用户同时向某个数据表中插入数据
用户无须等待可以继续进行其他操作,

其提交的数据将由数据库自动按提交顺序一个一个延迟处理

请问可不可以这样,如何实现!

25 个解决方案

#1


多个用户同时向某个数据表中插入数据
用户无须等待可以继续进行其他操作,
其提交的数据将由数据库自动按提交顺序一个一个延迟处理

MSSQL的机制不是这样的嘛? 

不会,楼下高手上~

#2


不明白用户无须等待可以继续进行其他操作中的其他操作指的是那些操作?

#3


數據庫好像不行吧。這應該是應用程裡控制的。也就是多線程

#4


不是很明白,
不過可以試試觸發器,看能否滿足需求,觸發器可以讓它們排排坐

#5


觸發器好像只能讓某個操作等待一定時間。跟這個不是一個概念

#6


多个用户同时向某个数据表中插入数据
用户无须等待可以继续进行其他操作,

其提交的数据将由数据库自动按提交顺序一个一个延迟处理


 设置事务隔离级别,最大的提高并发性

#7


事务处理,须等待。

#8


也可以这么说

应用程序向数据库发出了插入数据的指令,数据会排队等待提交,在此过程中应用程序会等待数据库返回状态,可能会导致应用程序等待时间过长或无法继续下去

如何实现应用程序提交,数据库立即返回OK的状态,并把这个操作加入到队列中,然后应用程序可以继续下面其他的操作,数据库在后端在延迟处理这些操作(比如:2分钟之后才能处理到当前操作)

感觉又有点像mysql中的DELAYED

#9


我觉得可以考虑job,提交后,就由数据库管理。用户还可以继续操作

#10


ADO.Net 2.0 异步操作

#11


MSSQL本来就是这么干的吧?

#12


做成事务

#13


在并发操作时,sql server会让操作每一个表的进程都自己排队,但也是瞬间的事情,一旦执行你的语句失败,那么系统会提示死锁

#14


并发的机会很少,sql server 处理操作很快。
关键是先插入数据主键,在客户端返回主键编辑数据。

#15


re:
gaojier1000(V2※高捷) 

如果死锁了,应用程序还能继续吗?

比如说10万用户同时向数据库中添加记录,那怎么办?

#16


死锁了,应用程序不能继续。
用事务为好

#17


死锁了,应用程序不能继续,那说的方案就不可行了

事务也会死锁啊

#18


插入数据不会有表级锁吧。

#19


在程序端做队列也可以,在数据库中 这样?

#20


没人回答了?

#21


我觉得你的sqlserver 处理机制就是这样,这个你不用管;

#22


多个用户同时向某个数据表中插入数据
用户无须等待可以继续进行其他操作,

其提交的数据将由数据库自动按提交顺序一个一个延迟处理


SQL SERVER不是这样吗?

#23


如果是对数据表的操作,这个不用自己去考虑了,设计人员应该考虑到了
如果要想自己研究下,不妨看看操作系统原理方面的书

#24


从应用程序的角度来说,以异步方式使用数据访问API就能达到用户需要的效果.
但从sql server自身对客户端请求的处理来说,本身就是这样实现的

#25


学习

#1


多个用户同时向某个数据表中插入数据
用户无须等待可以继续进行其他操作,
其提交的数据将由数据库自动按提交顺序一个一个延迟处理

MSSQL的机制不是这样的嘛? 

不会,楼下高手上~

#2


不明白用户无须等待可以继续进行其他操作中的其他操作指的是那些操作?

#3


數據庫好像不行吧。這應該是應用程裡控制的。也就是多線程

#4


不是很明白,
不過可以試試觸發器,看能否滿足需求,觸發器可以讓它們排排坐

#5


觸發器好像只能讓某個操作等待一定時間。跟這個不是一個概念

#6


多个用户同时向某个数据表中插入数据
用户无须等待可以继续进行其他操作,

其提交的数据将由数据库自动按提交顺序一个一个延迟处理


 设置事务隔离级别,最大的提高并发性

#7


事务处理,须等待。

#8


也可以这么说

应用程序向数据库发出了插入数据的指令,数据会排队等待提交,在此过程中应用程序会等待数据库返回状态,可能会导致应用程序等待时间过长或无法继续下去

如何实现应用程序提交,数据库立即返回OK的状态,并把这个操作加入到队列中,然后应用程序可以继续下面其他的操作,数据库在后端在延迟处理这些操作(比如:2分钟之后才能处理到当前操作)

感觉又有点像mysql中的DELAYED

#9


我觉得可以考虑job,提交后,就由数据库管理。用户还可以继续操作

#10


ADO.Net 2.0 异步操作

#11


MSSQL本来就是这么干的吧?

#12


做成事务

#13


在并发操作时,sql server会让操作每一个表的进程都自己排队,但也是瞬间的事情,一旦执行你的语句失败,那么系统会提示死锁

#14


并发的机会很少,sql server 处理操作很快。
关键是先插入数据主键,在客户端返回主键编辑数据。

#15


re:
gaojier1000(V2※高捷) 

如果死锁了,应用程序还能继续吗?

比如说10万用户同时向数据库中添加记录,那怎么办?

#16


死锁了,应用程序不能继续。
用事务为好

#17


死锁了,应用程序不能继续,那说的方案就不可行了

事务也会死锁啊

#18


插入数据不会有表级锁吧。

#19


在程序端做队列也可以,在数据库中 这样?

#20


没人回答了?

#21


我觉得你的sqlserver 处理机制就是这样,这个你不用管;

#22


多个用户同时向某个数据表中插入数据
用户无须等待可以继续进行其他操作,

其提交的数据将由数据库自动按提交顺序一个一个延迟处理


SQL SERVER不是这样吗?

#23


如果是对数据表的操作,这个不用自己去考虑了,设计人员应该考虑到了
如果要想自己研究下,不妨看看操作系统原理方面的书

#24


从应用程序的角度来说,以异步方式使用数据访问API就能达到用户需要的效果.
但从sql server自身对客户端请求的处理来说,本身就是这样实现的

#25


学习