似乎 SqlDataReader 提前读取
while (rdrMainLoop.Read())
{
sID = rdrMainLoop.GetInt32(0);
nearDupID = rdrMainLoop.IsDBNull(2) ? 0 : rdrMainLoop.GetInt32(2);
sqlCmdProducer.CommandText = "update [docSVsys] set [FTSnearDupID] = '" + sID.ToString() + "' where [sID] = '" + (sID + 1).ToString() + "';";
sqlCmdProducer.ExecuteNonQuery();
}
在此示例中,我正在更新下一行。
但是当我 .Read() 下一行 SqlDataReader 不会读取当前值。
我认为它会提前批量处理。
有没有办法强制 SqlDataReader 一次读取一行。
我很擅长脏读(必须是因为我可能会更新该行)。