C#中sqlDataRead 的三种方式遍历读取各个字段数值的方法

 更新时间:2018年09月03日 15:16:13   作者:todo_something  
这篇文章主要介绍了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#中sqlDataRead 的三种方式遍历读取各个字段数值的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • C#实现文件压缩与解压功能的示例代码

    C#实现文件压缩与解压功能的示例代码

    这篇文章主要为大家详细介绍了如何利用C#实现文件压缩与解压功能,文中的示例代码讲解详细,具有一定的学习价值,需要的可以参考一下
    2023-05-05
  • C#操作XML文件实例汇总

    C#操作XML文件实例汇总

    这篇文章主要介绍了C#操作xml文件实例,包括了对XML文件节点的查找、遍历、删除、添加等。是C#程序设计中非常重要的技巧,需要的朋友可以参考下
    2014-08-08
  • C# 中属性PropertyInfo的setvalue用法说明

    C# 中属性PropertyInfo的setvalue用法说明

    这篇文章主要介绍了C# 中属性PropertyInfo的setvalue用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • 解答“60k”大佬的19道C#面试题(下)

    解答“60k”大佬的19道C#面试题(下)

    这篇文章主要解答了“60k”大佬的19道C#面试题中的后9道,文中的面试题比较小众,作者给了不错的答案,相信对你以后的面试有所帮助,感兴趣就来了解下
    2020-06-06
  • C#使用Aspose.Cells创建和读取Excel文件

    C#使用Aspose.Cells创建和读取Excel文件

    这篇文章主要为大家详细介绍了C#使用Aspose.Cells创建和读取Excel文件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-10-10
  • C#编写发送邮件组件

    C#编写发送邮件组件

    本文给大家分享的是使用C#编写的发送邮件的组件,非常的简单实用,有需要的小伙伴可以参考下。
    2015-06-06
  • C# 灵活使用类的方法

    C# 灵活使用类的方法

    本文主要介绍了C# 灵活使用类的方法,具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • 基于C#实现宿舍管理系统

    基于C#实现宿舍管理系统

    这篇文章主要介绍了如何利用C#语言开发一个简易的宿舍管理系统,文中的实现步骤讲解详细,对我们学习C#有一定参考价值,感兴趣的可以了解一下
    2022-06-06
  • C#中实现契约测试的方法

    C#中实现契约测试的方法

    这篇文章主要介绍了C#中实现契约测试,在本文中,我将揭开契约测试的神秘面纱,并向您展示如何在 C# 项目中实现它,需要的朋友可以参考下
    2023-09-09
  • Unity使用鼠标旋转物体效果

    Unity使用鼠标旋转物体效果

    这篇文章主要为大家详细介绍了Unity使用鼠标旋转物体效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08

最新评论