当前位置:首页 > 数据库 > ADO > 正文内容

SqlCommand的ExecuteReader方法

小道6年前 (2018-08-28)ADO7096

用于执行查询语句,并返回一个DataReader类型的行集合。

解释1:将SQL语句发送到指定连接 生成一个SqlDataReader对象

解释2:当ExecuteReader()执行后返回一个SqlDataReader对象

两种解释实际上都在说明些方法就是给SqlDataReader对象一个可以访问查询到的结果的渠道。


 程序执行分析

1、首先需要new一个SqlDataReader对象。接收ExecuteReader()执行后返回的SqlDataReader对象。

2、SqlDataReader的HasRows属性可以判断SqlDataReader中是否有(一行或多行)数据,返回bool值,有数据时为true,程序向下执行,开始进入读取数据环节。

3、SqlDataReader的Read方法可以使SqlDataReader前进到下一条记录,同样返回bool值,当下一条无记录返回false,则表示记录读取完毕;当下一条有数据时为true,将读取到的数据(当前的一条记录)暂存在SqlDataReader中。

4、SqlDataReader的一系列get方法可以获取SqlDataReader中不同类型的值,保存到指定的变量中。

注:get方法参数为列数,即第几列。


还有一点很重要,DataReader必须保证SqlConnection处于连接状态。


输出 用户 表中的所以信息:

image.png

            using (SqlConnection conn = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDBFilename=|DataDirectory|\Database1.mdf;integrated Security=True;User Instance=false"))
            {
                conn.Open();//打开数据库
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = "select * from 用户";//搜索用户表
                    using (SqlDataReader reader = cmd.ExecuteReader())//提供一种从 SQL Server 数据库读取行的只进流的方式。此类不能被继承。
                    {
                        while (reader.Read())//读取获取结果集里面所有行信息(Read: 如果存在多个行,则为 true;否则为 false。)
                        {
                            Console.WriteLine("用户表中的ID:{0},帐号:{1},密码{2}.",reader.GetInt32(0), reader.GetString(1), reader.GetString(2));//输出Get...是输出 括号里面是要输出的列,从0开始。
                              //Console.WriteLine("用户表中的ID:{0},帐号:{1},密码{2}.", reader.GetInt32(reader.GetOrdinal("id")), reader.GetString(reader.GetOrdinal("帐号")), reader.GetString(reader.GetOrdinal("密码")));
                                                     //另一种方法,可以使用 reader.GetOrdinal("id") 获取该列的 序号值。
                        }
                    }
                }
            }

输出结果:

image.png

扫描二维码推送至手机访问。

版权声明:本文由小道发布,如需转载请注明出处。

本文链接:https://daobk.com/post/81.html

分享给朋友:

“SqlCommand的ExecuteReader方法” 的相关文章

ADO.NET介绍

ADO.NET介绍

一种程序对象,用于表示用户数据库中的数据结构和所包含的数据。在Microsoft Visual Basic编辑器中,可以使用ADO对象以及ADO的附加组件(称为Microsoft ADO Extensions for DLL and Security(ADOX))来创建或修改表和查询、检验数据库、或...

ADO数据库连接SqlConnection

ADO数据库连接SqlConnection

数据库应用程序的开发流程一般主要分为以下几个步骤:创建数据库使用Connection对象连接数据库使用Command对象对数据源执行SQL命令并返回数据使用DataReader和DataSet对象读取和处理数据源的数据Connection对象是连接程序和数据库的“桥梁”,要存取数据源中的数据,首先要...

ADO执行数据库操作命令对象SqlCommand

ADO执行数据库操作命令对象SqlCommand

使用Connection对象成功创建数据库连接后,接下来就可以使用Command对象对数据源执行查询、添加、删除和修改等各种SQL命令了。SqlCommand对象用来对SQL Server数据库执行操作命令。SqlCommand属性属性说明CommandText获取或设置要执行的SQL语句或存储过程...

SqlCommand的ExecuteNonQuery方法

SqlCommand的ExecuteNonQuery方法

ExecuteNonQuery:用于执行SQL语句,并返回SQL语句所影响的行数。该方法一般用于执行insert、delete、update等语句。using System; using System.Collections.Generic; using Syste...

评论列表

自媒体运营
自媒体运营 IP:河南省
2年前 (2021-11-29)

说的好,感谢分享!

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。