我在C#中有一个正在加载数据的表适配器,这个适配器连接到从SQL视图加载数据的存储过程。 问题是当这个适配器正在获取数据时,没有其他用户可以使用系统的其余部分! (例如我无法登录)即使在另一台PC上也会抛出一条消息(超时已过期),直到适配器完成它的工作!
适配器的SQL语句(从视图中选择):
select * from vw_MyView where Date>=@from and Date<=@to
有什么想法吗?!
答案 0 :(得分:1)
我已经解决了! 我添加了
With (noLock)
在每张桌子前面。例如:
在table1.ID = table2.ID
中从table1选择*,使用(nolock)内连接table2和(noLock)
请注意我想要不锁定的每张桌子前面的With (NoLock)
。
感谢所有人的努力!
答案 1 :(得分:-2)
如果我理解你的话,你应该使用下面的内容,它会在适配器获取数据的同时保持你的应用程序正常运行。
Application.DoEvents();