[原]C#:读取数据DataReader
来源:互联网 发布:网页调用淘宝客户端 编辑:程序博客网 时间:2024/04/29 00:21
DataReader对象是数据读取器对象,提供只读向前的游标。如果应用程序需要每次从数据库中取出最新的数据,或者只是需要快速读取数据,并不需要修改数据,那么就可以使用DataReader对象进行读取。对于不同的数据库连接,有不同的DataReader类型。
►在System.Data.SqlClient命名空间下时,可以调用SqlDataReader类。
►在System.Data.OleDb命名空间下时,可以调用OleDbDataReader类。
►在System.Data.Odbc命名空间下时,可以调用OdbcDataReader类。
►在System.Data.OracleClient命名空间下时,可以调用OracleDataReader类。
在使用DataReader对象读取数据时,可以使用ExecuteReader方法,根据SQL语句的结果创建一个SqlDataReader对象。
[注]:在创建DataRelation时,它首先验证是否可以建立关系。在创建DataRelation和将其添加到DataRelationCollection(DataSet的DataRelation对象的集合)之间的这段时间,可以对父行或子行进行其他更改。
示例,使用ExecuteReader方法创建一个读取tb_command表中所有数据的SqlDataReader对象,代码如下:
//实例化SqlConnection变量conn
SqlConnection conn = new SqlConnection("server=.;database=db_15;uid=sa;pwd=");
conn.Open(); //打开连接
//创建一个SqlCommand对象
SqlCommand cmd = new SqlCommand();
//设置Connection属性,指定其使用conn连接数据库
cmd.Connection = conn;
//设置CommandText属性,以及其执行的SQL语句
cmd.CommandText = "select* from tb_command";
//设置CommandType属性为Text,使其只执行SQL语句文本形式
cmd.CommandType = CommandType.Text;
//使用ExecuteReader方法实例化一个SqlDataReader对象
SqlDataReader sdr = cmd.ExecuteReader();
1、判断查询结果中是否有值
可以通过SqlDataReader对象的HasRows属性获取一个值,该值指示SqlDataReader是否包含一行或多行,即判断查询结果中是否有值。语法如下:
public override bool HasRows{get;}
其中,如果SqlDataReader包含一行或多行,该值为true,否则为false。示例代码如下:
SqlConnection conn = new SqlConnection("server=.;database=db_15;uid=sa;pwd=");
conn.Open();
SqlCommand cmd = new SqlCommand("select* from "+textBox1.Text.Trim(), conn);
SqlDataReader sdr = cmd.ExecuteReader();
sdr.Read();
if (sdr.HasRows){
MessageBox.Show("数据表中有值");
}
else{
MessageBox.Show("数据表中没有任何数据");
}
2、读取数据
可以通过ExecuteReader方法,根据SQL语句创建一个SqlDataReader对象后,再调用SqlDataReader对象的Read方法读取数据。Read方法使用SqlDataReader前进到下一条记录,SqlDataReader的默认位置在第一条记录前面。因此,必须调用Read方法访问数据。对于每个关联的SqlConnection,一次只能打开一个SqlDataReader,在第一个关闭之前,打开另一个的任何尝试都将失败。
[注]:在使用SqlDataReader对象之前,必须打开数据库连接。如果针对一个SqlConnection,创建多个SqlDataReader对象,则创建下一个SqlDataReader对象之前,要通过Close方法关闭上一个SqlDataReader对象。
- [原]C#:读取数据DataReader
- C#:读取数据DataReader
- DataReader读取数据
- datareader读取数据
- C#之读取数据:DataReader对象
- 读取数据:DataReader对象(三)
- 用DataReader从Oracle10g数据库中读取数据(c#) vs2008控制台程序
- c# 中关于DataReader读取数据的方式
- 使用DataReader读取数据即查询所有学生
- DataSet和DataReader两者读取数据时有什么区别?
- 【原】LPC1114读取串口读不到数据
- SpringBoot实现多个数据原读取
- DataReader 数据绑定
- DataReader检索数据
- 数据阅读器(DataReader)
- 使用 DataReader 检索数据
- WYTC-C#-SQL-DataReader
- 用data.DataReader读取股价数据并分析--python学习笔记17
- Xcode7.2简单解析之PList文件解析
- iOS学习之iOS沙盒(sandbox)机制和文件操作(二)
- 用java实现页面置换
- 剑指Offer刷题(3)
- iOS学习之iOS沙盒(sandbox)机制和文件操作(一)
- [原]C#:读取数据DataReader
- 杂七杂八的错误
- Android基本知识
- HVR简单聊
- cmd>file 2>&1与cmd 2>&1 >file
- ios设计模式2-工厂模式
- 接口相关的设计模式
- 扣丁学堂——handler
- Sharedperferences数据储存