一。手动编写DataSet:
   有时候不想从数据库导出 DataSet,或者有其他的需要,要将数据库里的DataSet包装成另一个样子,这个时候,了解DataSet的内部结构就非常必要。DataSet的构造也比较简单:
   一个DataSet里头有很多 DataTable
   一个DataTable里头有很多  DataColumn 和很多 DataRow
   从名字就能猜到它们大概是干什么的。。
   ok,举例说明吧~
 
   private DataSet CreatTable()
        {
            //创建一个Table 和 DataSet
            DataTable table = new DataTable();
            DataSet ds = new DataSet();
            //创建一个列
            DataColumn column1 = new DataColumn();
            column1.DataType = System.Type.GetType("System.String");
            column1.ColumnName = "Periord";
            //创建一个列
            DataColumn column2 = new DataColumn();
            column2.DataType = System.Type.GetType("System.Int32");
            column2.ColumnName = "Total";
            //
            //把列添加进去
            table.Columns.Add(column1);
            table.Columns.Add(column2);
            //创建一个行
            DataRow row1 = table.NewRow();
            row1["Periord"] = "Monday";
            row1["Total"] = 0;
 
            DataRow row2 = table.NewRow();
            row2["Periord"] = "Tuesday";
            row2["Total"] = 0;
 
            DataRow row3 = table.NewRow();
            row3["Periord"] = "Wednesday";
            row3["Total"] = 0;
 
            DataRow row4 = table.NewRow();
            row4["Periord"] = "Thursday";
            row4["Total"] = 0;
 
            DataRow row5 = table.NewRow();
            row5["Periord"] = "Friday";
            row5["Total"] = 0;
 
            DataRow row6 = table.NewRow();
            row6["Periord"] = "Saturday";
            row6["Total"] = 0;
 
            DataRow row7 = table.NewRow();
            row7["Periord"] = "Sunday";
            row7["Total"] = 0;
            //把行添加进去
            table.Rows.Add(row1);
            table.Rows.Add(row2);
            table.Rows.Add(row3);
            table.Rows.Add(row4);
            table.Rows.Add(row5);
            table.Rows.Add(row6);
            table.Rows.Add(row7);
            //把 Table添加到 DataSet 里面去
            ds.Tables.Add(table);
            return ds;
        }
 
二。遍历DataSet中的元素
   贴一个不错的网上的代码
   DataSet2 ds = new DataSet2();
   SqlDataAdapter da1 = new SqlDataAdapter(str, conn);
   da1.Fill(ds, "table");  
   //已经装载到DataSet数据集中了   
 
   for (int k = 0; k < ds.Tables["table"].Rows.Count; k++)
                {
                    for (int j = 0; j < ds.Tables["table"].Columns.Count; j++)
                    {
 
                        if (ds.Tables["table"].Rows[k]["emergency"].ToString().Trim() == "1")
                        {
 
                            ds.Tables["table"].Rows[k]["emergency"] = "合格";
                        }
                        else if (ds.Tables["table"].Rows[k]["emergency"].ToString().Trim() == "0")
                        {
                            //emergency = "处置";
                            ds.Tables["table"].Rows[k]["emergency"] = "处置";
 
                        }
                    }
                } 
   ds.AcceptChanges();

C# 手动编写 DataSet,DataTable 及遍历DataSet中的数据的更多相关文章

  1. java编写二叉树以及前序遍历、中序遍历和后序遍历 .

    /** * 实现二叉树的创建.前序遍历.中序遍历和后序遍历 **/ package DataStructure; /** * Copyright 2014 by Ruiqin Sun * All ri ...

  2. Hadoop通过HCatalog编写Mapreduce任务访问hive库中schema数据

    1.dirver package com.kangaroo.hadoop.drive; import java.util.Map; import java.util.Properties; impor ...

  3. 遍历Dataset并输出数据实例

    转自:http://www.cnblogs.com/csdm/archive/2010/02/02/1661808.html <%@ Page Language="C#" A ...

  4. DataSet & DataTable &DataRow 深入浅出

    本篇文章适合有一定的基础的人去查看 ,最好学习过一定net 编程基础在来查看此文章. 1.概念 DataSet是ADO.NET的中心概念.可以把DataSet当成内存中的数据库,DataSet是不依赖 ...

  5. 遍历DataSet

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...

  6. sqldataAdapter/dataset/datatable的使用

    public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Loa ...

  7. 匿名类型 使用泛型T linq返回dynamic类型的匿名实体 如何把匿名类型.GetType()返回的对象传进泛型里面 EF实体查询出的数据List<T>转DataTable出现【DataSet 不支持 System.Nullable<>】的问题

    [100分]紧急求助:LinQ下使用IQueryable<T>如何将返回类型<T>使用匿名类型 问题描述如下:我有一个方法如下:public IQueryable Dissen ...

  8. C#遍历DataSet与DataSet元素实现代码

    C#中的Dataset就像一个数据库,有多个表(Table),一般只有一个表,然后每个表中有行(DataRow)和列(DataColumn),DataRow[DataColumn]可以得到某行某列数据 ...

  9. DataSet,DataTable,DataView、DataRelation

    一.创建Dataset和DataTable DataSet ds = new DataSet();//DataSetName默认为"NewDataSet" DataTable ta ...

随机推荐

  1. 【sqli-labs】 less53 GET -Blind based -Order By Clause -String -Stacked injection(GET型基于盲注的字符型Order By从句堆叠注入)

    http://192.168.136.128/sqli-labs-master/Less-53/?sort=1';insert into users(id,username,password) val ...

  2. NTP测试1

    ntp server A : 10.101.75.8 B : 10.101.75.38 B: [root@r10n16313.sqa.zmf /home/ahao.mah] #cat /etc/ntp ...

  3. Oracle ASM注意事项

    ASM是负载均衡的存储策略,加新磁盘会将其它盘数据平均迁移到新磁盘,删除磁盘会将删除磁盘数据平均写回其它磁盘 1.同一磁盘组如果是在raid上,划分的磁盘越少越好,磁盘组分布在不同raid上性能好: ...

  4. [C#] Linq 动态条件查询

    应用背景:以货品为例,在基础数据中配置货品的判断规则,要根据这个规则筛选出符合条件的集合. 创建货品类 public class Product { public string Name { get; ...

  5. linux修改mysql表结构

    增加字段: alter table [tablename] add [字段名] [字段类型] first(首位); alter table [tablename] add [字段名] [字段类型] a ...

  6. SSL/TLS 协议介绍

    SSL/TLS 协议(RFC2246 RFC4346)处于 TCP/IP 协议与各种应用层协议之间,为数据通讯提供安全支持. 从协议内部的功能层面上来看,SSL/TLS 协议可分为两层: 1. SSL ...

  7. ES6的let和var声明变量的区别

    关于let的描述 let允许你声明一个作用域被限制在块级中的变量.语句或者表达式.与var关键字不同的是,它声明的变量只能是全局或者整个函数块的. 作用域规则 let声明的变量只在其声明的块或子块中可 ...

  8. RAID级别简介

    独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(RAID, Redundant Array of Inexpensive ...

  9. Mysql中文乱码以及导出为sql语句和Excel问题解决

    Mysql中文乱码以及导出为sql语句和Excel问题解决 这几天基于Heritrix写了一个爬虫,用到mysql,在导入导出数据时,遇到一些乱码问题,好不容易解决了,记录一下,以备查看.一.导出数据 ...

  10. RestEasy 用户指南----第4章.使用@Path @GET @POST 等

    转载说明出处:http://blog.csdn.net/nndtdx/article/details/6870391 原文地址 http://docs.jboss.org/resteasy/docs/ ...