简单描述DataAdapter、DataReader、DataSet、Datatable对比

一、存储的对比

DataReader 从数据库中检索【只读】数据流,存在客户端网络缓冲区,直到Read方法访问它们。

DataAdapter 表示一组SQL命令和数据库连接,用于填充DateSet和【更新】数据源

DataSet 存在内存中的数据缓存,可包含多个DataTable

DataTable 内存中的数据表

二、优缺点

优点

缺点

DataReader

占内存小,只读

需要独占连接,只读

DataAdapter

一次性读取,可以增删改查

占内存,数据量大不适合

三、搭配使用

DataReader与SqlCommand搭配使用。可向DataTable里存入数据。

DataAdapter 与 DataSet搭配使用。DataSet可再存入DataTable。

四、最简单实例

//SQL Server数据库

// DataReader

//设连接有效,数据不为空

SqlCommand command = new SqlCommand("SELECT id FROM dbo.bu" , connection);

connection.Open();

SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
            {  Console.WriteLine(reader.GetInt32(0));  }
reader.Close();
 
// DataAdapter  DataSet  

//设连接有效,数据不为空

SqlDataAdapter adapter = new SqlDataAdapter("SELECT id FROM dbo.bu ", connection);
DataSet customers = new DataSet();
adapter.Fill(customers, "bu");
原文地址:https://www.cnblogs.com/hydor/p/3523447.html