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

简单描述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");

相关推荐

cf传说活动多久出一次?(cf传说活动多久出一次皮肤)
盒子365app下载

cf传说活动多久出一次?(cf传说活动多久出一次皮肤)

📅 07-15 👁️ 4035
無心法師
盒子365app下载

無心法師

📅 07-10 👁️ 7382
rssi为什么是负数 rssi正常范围是多少
365日博官网

rssi为什么是负数 rssi正常范围是多少

📅 07-04 👁️ 4655
签了恒易融多久放款?3大关键流程解析及到账时间全指南
长安通线上办理指南+全城网点地址
盒子365app下载

长安通线上办理指南+全城网点地址

📅 06-30 👁️ 9669
2021埃及足球世界排名 FIFA排名第45
365BET体育投注官网

2021埃及足球世界排名 FIFA排名第45

📅 07-17 👁️ 5122