关于DataReader的,很简单。DataReader是独享一个到数据库的连接,那么假设我在一页上用DataReader读数据,此时如果有两个用户同时请求这

smoothwood 2004-01-31 08:53:26
关于DataReader的,很简单。DataReader是独享一个到数据库的连接,那么假设我在一页上用DataReader读数据,此时如果有两个用户同时请求这一页,会不会出现DataReader未关闭的错误呀?
...全文
51 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
smoothwood 2004-02-02
  • 打赏
  • 举报
回复
谢谢大家!
zhangdaqi 2004-02-02
  • 打赏
  • 举报
回复
《asp.net 高级编程》 里讲得很详细 Richard Anderson Brinan Francis
不会出现问题,其实仔细想想,每个数据库的提取方法都是不会出现你说的情况的。
原因就是ado.net is for web.不需要有这种担心。
真相重于对错 2004-02-02
  • 打赏
  • 举报
回复
lock
smoothwood 2004-02-01
  • 打赏
  • 举报
回复
哪位老大能提供一些系统权威一点的资料,让我看看呀!谢谢!
stpangpang 2004-02-01
  • 打赏
  • 举报
回复
sorry 我把“独享一个到数据库的连接”当成了 static 类型的connection ,@_@
只要楼主的 connection 不是static 的,不会出现这个问题~
cnlamar 2004-02-01
  • 打赏
  • 举报
回复
应该不会的,多用户的话,自己有自己的线程,自己的对象实例,但连接可能会持续,这样做的话估计会导致连接池崩溃的问题。。。但不会出现楼主所说的问题
lufly2000 2004-02-01
  • 打赏
  • 举报
回复
同意xjbsky(蓝天)说的!

sqldatareader本身就是一个类,在访问数据库的页中创建它时本身就用了new创建了一个新实例,所以当不同的用户执行这个页面时得到的都是不同的实例。
alongman 2004-01-31
  • 打赏
  • 举报
回复
一个用户一个实例,所以不会的。
如果同一用户访问,必须先DataReader.close();不然其他数据请求无法操作
stpangpang 2004-01-31
  • 打赏
  • 举报
回复
当正在使用 SqlDataReader 时,关联的 SqlConnection 在忙于服务 SqlDataReader,而且除了关闭以外不能对 SqlConnection 执行其他任何操作。除非调用 SqlDataReader 的 Close 方法,否则会一直处于此状态。
既然共享一个连接,那就....
lcy5415 2004-01-31
  • 打赏
  • 举报
回复
不会的
xjbsky 2004-01-31
  • 打赏
  • 举报
回复
不会,独享一个到数据库的连接是指在当前页面的执行过程中如果你没有关闭DataReader之前,你不能使用这个DataReader所使用的Connection,当其它用户同时请求此页面时,会产生该页面的新实例,与此用户正在使用的页面实例无关。
stpangpang 2004-01-31
  • 打赏
  • 举报
回复
如果是你是独享一个connection 肯定会有这个问题~~
如果你把数据操作(如连接的建立,打开,释放,数据的操作 等)封成一个class ,用的时候new一下 应该就可以解决这个问题了~
smoothwood 2004-01-31
  • 打赏
  • 举报
回复
Are you sure?
wwl1981 2004-01-31
  • 打赏
  • 举报
回复
no

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧