.net 使用SQL Server DataAdapter了解DataTable以获得最佳速度

.net 使用SQL Server DataAdapter了解DataTable以获得最佳速度,.net,sql-server,.net,Sql Server,我一直在想这个问题,真的找不到一个直截了当的答案。在.NET中,当您使用SQL Server数据适配器用数据库中的行填充数据表时,它是否真的立即加载到内存中,或者在某些方面访问数据库时,它是否仍从数据库中读取数据?填充数据表后,您可以关闭连接。填充后,它不再需要访问数据库。DataReader在使用时需要打开连接。是的,当适配器填充DataTable时,所有数据都从数据库读取到内存中并存储在DataTable中。不需要永久连接。显然,如果要刷新DataTable中的数据或保存对数据库的更改,则需

我一直在想这个问题,真的找不到一个直截了当的答案。在.NET中,当您使用SQL Server数据适配器用数据库中的行填充数据表时,它是否真的立即加载到内存中,或者在某些方面访问数据库时,它是否仍从数据库中读取数据?

填充数据表后,您可以关闭连接。填充后,它不再需要访问数据库。DataReader在使用时需要打开连接。

是的,当适配器填充DataTable时,所有数据都从数据库读取到内存中并存储在DataTable中。不需要永久连接。显然,如果要刷新DataTable中的数据或保存对数据库的更改,则需要连接,但不需要保持连接打开以使用DataTable中的数据。

“存储在数据库中的数据在内存中的断开表示”,如果我准确地记得我的教科书定义的话

该定义是不言自明的,但为了澄清……只要您在DataAdapter上调用
Fill()
,它确实会将数据加载到内存中。在您显式调用另一个方法(如
Update()、Delete()或Insert()
)之前,它不需要再次访问数据库

DataAdapter还隐式管理连接本身。如果连接已关闭,它会在访问数据库之前打开连接,并在作业完成后自动关闭连接