DataReader

  DataReader对象是一个简单的数据集,用于从数据源中检索只读数据集,常用于检索大量数据。DataReader对象只允许以只读、顺向的方式查看其中所存储的数据,提供一个非常有效率的数据查看模式,同时DataReader对象还是一种非常节省资源的数据对象。
  DataReader对象可通过Command对象的ExecuteReader方法从数据源中检索数据来创建。

DataReader属性

  DataReader对象常用属性如下表所示:
  FieldCount 只读,表示纪录中有多少字段
  HasMoreResults 表示是否有多个结果,本属性和SQL Script 搭配使用。
  HasMoreRows 只读,表示是否还有资料未读取
  IsClosed 只读,表示DataReader 是否关闭
  Item 只读,本对象是集合对象,以键值(Key)或索引值(Index)的方式取得纪录中某个字段的数据
  RowFetchCount 用来设定一次取回多少笔记录,预设为值为1 笔

DataReader方法

  DataReader对象常用方法如下表所示:
  方法 说明
  Close 将DataReader 对象关闭
  GetDataTypeName 取得指定字段的数据型态
  GetName 取得指定字段的字段名称
  GetOrdinal 取得指定字段名称在纪录中的顺序
  GetValue 取得指定字段的数据
  GetValues 取得全部字段的数据
  IsNull 用来判断字段内是否为Null 值
  NextResult 用来和SQL Script 搭配使用,表示取得下一个结果
  Read 让DataReader 读取下一笔记录,如果有读到数据则传回True,若没有纪录则传回False

示例:

  //连接数据库
  SqlConnection conn = new SqlConnection();
  conn.ConnectionString = "Data Source=(local);Integrated Security=SSPI;Initial Catalog=db_showHouse";
  //打开连接
  conn.Open();
  SqlCommandcmd = new SqlCommand("select User_names from tb_User", conn);
  SqlDataReader drNew = cmd.ExecuteReader();
  if (drNew.HasRows)
  {
  while (drNew.Read())
  {
  MessageBox.Show(drNew[0].ToString());
  }
  }
  drNew.Close();
原文地址:https://www.cnblogs.com/liyugang/p/2013644.html