我在Update触发器中要用一个DataReader循环读取Inserted表中的数据,每读出一条要根据某个字段更新相应的子表,可是问题是在DataReader里边时本身已经打开了一个SqlConnection所以提示我连接已经在使用中,我想再new一个Conn(SqlConnection Conn2 = new SqlConnection("Context Connection=true");)出来但是还是告诉我不行,我想应该是两个对象公用一个连接吧?对于这个问题怎么解决?不管是谁解决了这个问题有大礼送上
while(Reader.reade())
{
//打开另一个连接处理当前行数据
}
所以关闭当前连接时不可能的 如果换一种思路 比如将Inserted表加载到Datatable中,但是在更新大批量的时候比如更新200万条数据就会出问题 一次装载那么多内存溢出
========================================================
比较奇怪,触发器中做循环是在SQL中的事情,和DataReader有什么关系?
cmdUpdate.Connection = sqlCnn;保持他们在一个连接里面应该是可以的。