我在MS SQL 2005中有一个带有主键的表,该表有数十万条记录。当我在Management Studio中查询记录时,它带来的速度非常快,但是当我使用下面的代码查找它时,它会花费很多时间。我必须使用数据集,因为我需要更新行。如何提高性能?

objData . ProcName ="myProcName"
objData . CreateCommand()
objData . Parameters("@BName", SqlDbType. VarChar, 20, "MyBranch1")
SqlDataAdapter da = objData . createAdapter()
da . Fill(ds,"MyTable1")

虽然proc代码非常简单:
select * from MyTable1 Where BranchName = @BName

该数据集将以相同的方式打开5个表,因此总时间超过一分钟

最佳答案

您应该考虑使用datareader而不是数据集,并使用sqlcommand进行手动更新。

U还应考虑通过可能提供其他条件来限制要获取的记录数

10-08 12:43