温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么在C#中使用sqlDataRead遍历读取各个字段数值

发布时间:2021-05-19 16:33:34 来源:亿速云 阅读:289 作者:Leah 栏目:编程语言

这篇文章将为大家详细讲解有关怎么在C#中使用sqlDataRead遍历读取各个字段数值,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

数据库的查询分析器中写上如下代码:

create table studentname
(
 id int  primary key identity(1,1) not null ,
name nvarchar(500) not null
)
insert into studentname values('long')
insert into studentname values('long')
insert into studentname values('long')
insert into studentname values('long')
insert into studentname values('long')
insert into studentname values('chao')
insert into studentname values('chao')

--sql server 2012 通过。

---------------------------------------------------------------------------------------------------

以下是第一种方法:

using System.Data;
 using System.Data.SqlClient;
string constr = "server=localhost;uid=sa;pwd=longshicheng;database=Student";
      SqlConnection conn = new SqlConnection(constr);
      SqlCommand cmd = new SqlCommand("select * from studentname", conn);
      conn.Open();
      SqlDataReader rdr = cmd.ExecuteReader();
      string makestr = "";
      DataTable table = new DataTable();
      table.Load(rdr); //数据表装入 dataReader 。
      string result="";
      for (int i = 0; i < table.Rows.Count; i++) // 遍历行
      {
        for (int j = 0; j < table.Columns.Count; j++) //遍历列
        {
          result += table.Rows[i][j].ToString(); //逐行逐列显示每个单元格的数值。
        }
        result += Environment.NewLine; //一行遍历完成就写入回车。
      }
      txtlab.Text = result;
      /***************************************************************/

以下是第二种方法:         

string constr = "server=localhost;uid=sa;pwd=longshicheng;database=Student";
      SqlConnection conn = new SqlConnection(constr);
      SqlCommand cmd = new SqlCommand("select * from studentname", conn);
      conn.Open();
      SqlDataReader rdr = cmd.ExecuteReader();
      string makestr = "";
      for (int k = 0; k < rdr.FieldCount; k++) //获取字段名称
      {
        makestr += rdr.GetName(k) + "\t"; //载入字段名称
      }
      makestr += Environment.NewLine; //换行
      makestr = makestr + "---------------------------------------------"+Environment.NewLine;
      while (rdr.Read()) //逐行读取每一笔记录
      {
        for (int t = 0; t < rdr.FieldCount; t++) //逐列读出
        {
          makestr = makestr + rdr[t].ToString() + "\t"; //累加每一行,也就是逐个字段读出对应的数值
        }
        makestr = makestr + Environment.NewLine; //又一行
      }
      txtinfo.Text = makestr;
      rdr.Close(); //关闭
      conn.Close();
    }

以下是第三种方法:

string constr = "server=localhost;uid=sa;pwd=longshicheng;database=Student";
      SqlConnection conn = new SqlConnection(constr);
      SqlCommand cmd = new SqlCommand("select * from studentname", conn);
      conn.Open();
      SqlDataReader rdr = cmd.ExecuteReader();
      string makestr = "";
      for (int k = 0; k < rdr.FieldCount; k++) //获取字段名称
      {
        makestr += rdr.GetName(k) + "\t"; //载入字段名称
      }
      makestr += Environment.NewLine; //换行
      makestr = makestr + "---------------------------------------------" + Environment.NewLine;
      while (rdr.Read()) //逐行读取每一笔记录
      {
        makestr = makestr + rdr.GetValue(0) + " \t" + rdr.GetValue(1).ToString() + "\t";
        makestr = makestr + Environment.NewLine;
      }
      txtother.Text = makestr;
      rdr.Close(); //关闭
      conn.Close();

  以上所有方法运行结果均如下:

id    name   
---------------------------------------------
1     long  
2     long    
3     long    
4     long     
5     long     
6     chao    
7     chao

C#是什么

C#是一个简单、通用、面向对象的编程语言,它由微软Microsoft开发,继承了C和C++强大功能,并且去掉了一些它们的复杂特性,C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程从而成为.NET开发的首选语言,但它不适用于编写时间急迫或性能非常高的代码,因为C#缺乏性能极高的应用程序所需要的关键功能。

关于怎么在C#中使用sqlDataRead遍历读取各个字段数值就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI