※ 引述《wind681201 (阿风~~)》之铭言:
: 在msdn上面有说,在connection里,只能存在一个datareader,
: 这一句话,我一直是看不懂,我的疑问是。
: 一、一个connection里只能存在一个Datareader?
: 二、只要是连线相同的数据库,只能有一个datareader?
: 三、关闭datareader就好,还是连sqlcommand也要一起关了,才可以用呢?
: 状况一:
: 在a.aspx网页里有一个connection连b数据库,在这里只能有一个datareader?
: 那在b.aspx网页中有一个connection连b数据库,就无法使用datareader?
: 也就是说,整个网站,多人使用一个datareader?
: 状况二:
: A class里,有conneciotn连数据库b,若我
: dim a1 as new a : dim b1 as new a
: 那是个存在一个datareader吗?还是说a1 b1都有自己的datareader可用呢?
: 状况三:
: 同样的连线中,跑槽状循环,就不能用datareader因为只能有一个,可能
: 外层的datareader没关,就不能用在内层?
: 研究很久了,还是不清楚
一个Reader被建立出来后在尚未关闭或消灭之前connection都是保持着open
所以同样的connection实体再去做其他Command会丢出Exception
状况二不明白你说的意思
状况三
Reader是顺向而且不可逆的资料读取
你需要在后面大量程式码使用到的资料请读入DataTable