栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > Cocos2d-x

C#三分钟教你理解DataTable、Datarow、DataColumn的关系以及用法

Cocos2d-x 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C#三分钟教你理解DataTable、Datarow、DataColumn的关系以及用法

C#三分钟教你理解DataTable、Datarow、DataColumn的关系以及用法!

码字不易,点赞关注加收藏,谢谢各位看官老爷了!!!!。
码字不易,点赞关注加收藏,谢谢各位看官老爷了!!!!。
码字不易,点赞关注加收藏,谢谢各位看官老爷了!!!!。
最终实现下图的效果:


C#三分钟教你理解DataTable、Datarow、DataColumn的关系以及用法!
  • C#三分钟教你理解DataTable、Datarow、DataColumn的关系以及用法!
  • 前言
  • 一、几者的关系
  • 二、声明以及初始化
    • 1、DataTable的创建
    • 2、DataColumn的创建
    • 3、DataRow的创建
    • 4、DataSet的创建
    • 5、数据查询
      • ①遍历DataSet中所有DataTable
      • ②遍历DataTable中所有DataColumn
      • ③遍历DataTable中所有DataRow数据
    • 6、完整代码
  • 总结


前言

提示:以下是本篇文章正文内容,下面案例可供参考

一、几者的关系

几者的关系如下所示:



DataSet里可以放多个DataTable,,其次就是DataTable里是由两部分组成的,一个是DataColumn,一个是DataRow。可以将其想像成为一个Excel文件,Dataset就是每页excel,dataTable就是每页内存储的数据,datarow和dataColumn就当成是数据的行和列。所以我们操作其数据可以根据表头也可以根据行和列的索引进行相关操作。

二、声明以及初始化 1、DataTable的创建

代码如下:

//1、首先创建一个DataTable对象 表名为Mytable
            DataTable dt = new DataTable("Mytable");
2、DataColumn的创建

代码如下:

 //2、创建四列并添加到DataTable的列中 列名分别是 姓名 性别 年龄 兴趣
            dt.Columns.Add(new DataColumn("姓名"));
            dt.Columns.Add(new DataColumn("性别"));
            dt.Columns.Add(new DataColumn("年龄"));
            dt.Columns.Add(new DataColumn("兴趣"));

F12进入到DataColumn的构造函数可以看到小括号内的字符串就是列名称

3、DataRow的创建

代码如下:

 //3、下面我们需要往这个表里添加一些数据
            for (int i = 0; i < 10; i++)
            {
                DataRow dr = dt.NewRow();
                //分别给各列名如下的行赋值
                dr["姓名"] = "张三"+i;
                dr["性别"] = "男";
                dr["年龄"] = 20+i;
                dr["兴趣"] = "打篮球" + i;
                //将此条记录加入到dt中去
                dt.Rows.Add(dr);
            }

注意这里要用到DataTable.NewRow()方法来创建一个新的实例。

4、DataSet的创建

代码如下:

 //4、DataSet 声明以及初始化:
           //将这个DataTable加入到DataSet中去
            DataSet ds = new DataSet();
            ds.Tables.Add(dt);
5、数据查询 ①遍历DataSet中所有DataTable
foreach (var item in ds.Tables )//遍历DataSet中的所有Datatable
{
	DataTable dt0 = item as DataTable;
}
②遍历DataTable中所有DataColumn
//遍历Datatable中所有列并打印每一行的表头
foreach (var itemColumns in dt0.Columns)
{
//这里要用到as表达式或者强制类型转换,否则的话没法找到其ColumnName属性。
Console.Write((itemColumns as DataColumn).ColumnName+"||");
...
}
③遍历DataTable中所有DataRow数据
//第一种方法  采用扩展方法 .Field的方式
Console.WriteLine("-----方法1:采用扩展方法的方式----------");
foreach (var itemRows in dt0.Rows)
{
Console.Write((itemRows as DataRow).Field("姓名")+"  ");
Console.Write((itemRows as DataRow).Field("性别") + " ");
Console.Write((itemRows as DataRow).Field("年龄") + " ");
Console.WriteLine((itemRows as DataRow).Field("兴趣") +" ");
...
}

Console.WriteLine("-----方法2:采用查询索引的方式----------");
for (int i = 0; i < dt0.Rows.Count; i++)
{
	Console.WriteLine("{0}{1}{2}{3}", dt0.Rows[i][0], dt0.Rows[i][1], dt0.Rows[i][2], dt0.Rows[i][3]);
}

这里用到了DataRow的扩展方法.Field,可以F12进去看他的定义如下:
其中方法一我采用这种格式: Field<返回值类型>(“列名称”),方法二类似数据库查表的方式一样

6、完整代码

代码量不多就不上传git了拷贝过去就能用了,完整代码如下:

  //1、首先创建一个DataTable对象 表名为Mytable
            DataTable dt = new DataTable("Mytable");
            //2、创建四列并添加到DataTable的列中 列名分别是 姓名 性别 年龄 兴趣
            dt.Columns.Add(new DataColumn("姓名"));
            dt.Columns.Add(new DataColumn("性别"));
            dt.Columns.Add(new DataColumn("年龄"));
            dt.Columns.Add(new DataColumn("兴趣"));
            //3、下面我们需要往这个表里添加一些数据
            for (int i = 0; i < 10; i++)
            {
                DataRow dr = dt.NewRow();
                //分别给各列名如下的赋值
                dr["姓名"] = "张三"+i;
                dr["性别"] = "男";
                dr["年龄"] = 20+i;
                dr["兴趣"] = "打篮球" + i;
                //将此条记录加入到dt中去
                dt.Rows.Add(dr);
            }
            
            //将这个DataTable加入到DataSet中去
            DataSet ds = new DataSet();
            ds.Tables.Add(dt);

            foreach (var item in ds.Tables )//遍历DataSet中的所有Datatable
            {
                DataTable dt0 = item as DataTable;
                foreach (var itemColumns in dt0.Columns)//遍历Datatable中所有列并打印每一行的表头
                {
                    Console.Write((itemColumns as DataColumn).ColumnName+"||");
                }
                Console.WriteLine();

                //第一种方法  采用扩展方法 .Field的方式
                Console.WriteLine("--------------采用扩展方法的方式----------------");
                foreach (var itemRows in dt0.Rows)
                {
                    Console.Write((itemRows as DataRow).Field("姓名")+"  ");
                    Console.Write((itemRows as DataRow).Field("性别") + "   ");
                    Console.Write((itemRows as DataRow).Field("年龄") + "   ");
                    Console.WriteLine((itemRows as DataRow).Field("兴趣") + "   ");
                }

                Console.WriteLine("--------------采用查询索引的方式----------------");
                for (int i = 0; i < dt0.Rows.Count; i++)
                {
                    Console.WriteLine("{0}  {1}   {2}   {3}", dt0.Rows[i][0], dt0.Rows[i][1], dt0.Rows[i ][2], dt0.Rows[i][3]);
                }
            }
            Console.ReadKey();
        }
总结

以上就是今天要讲的内容,简单介绍了DataSet、DataTable、DataColumn、DataRow的使用。

码字不易,点赞关注加收藏,谢谢各位看官老爷了!!!!。 码字不易,点赞关注加收藏,谢谢各位看官老爷了!!!!。 码字不易,点赞关注加收藏,谢谢各位看官老爷了!!!!。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/951793.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号