zoukankan      html  css  js  c++  java
  • C#_从DataTable中检索信息

    C#_从DataTable中检索信息 

    存在于内存中的虚拟表DataTable,绑定在数据显示控件后,如果想在再检索其中某些信息,可以利用DataTable.Select方法进行检索,避免了重复的读取数据库。Select方法共有4个重载方法。

    先创建一个DataTable:

    DataTable dt = new DataTable("Student");//DataTable对象,表名时Student
    //开始增加列头
    dt.Columns.Add("编号",typeof(Int32));
    dt.Columns.Add("姓名",typeof(String));
    dt.Columns.Add("成绩",typeof(String));
    //开始增加行数据
    DataRow row = dt.NewRow();
    row[0] = 1;
    row[1] = "张";
    row[2] = "98";
    dt.Rows.Add(row);//向DataTable增加第一行记录
    row = dt.NewRow();
    row[0] = 2;
    row[1] = "李";
    row[2] = "78";
    dt.Rows.Add(row);//向DataTable增加第二行记录
    //设置DataTable的主键
    dt.PrimaryKey = new DataColumn[]
    {
      dt.Columns[0]
    };

    利用DataTable.Select()获取所有DataRow行对象数组:

    DataRow[] rows = dt.Select();
    /*row现在就相当一个二维数组
    * [1],[张],[98]
    * [2],[李],[78]
    * 获取数据和二维数组的取值是相似的
    */
    string name1 = rows[0][1].ToString();//name1="张"
    string name2 = rows[1][1].ToString();//name2="李"

    利用DataTable.Select(String)获取指定检索条件的DataRow行对象数组:

    DataRow[] rows = dt.Select("姓名='张'");
    // [1],[张],[98]
    string id = rows[0][0].ToString();//id=1
    string name = rows[0][1].ToString();//name1 = "张"
    string score = rows[0][2].ToString();//score="98"

    说明:这里Select方法中的检索字符串相当于T-SQL中的where关键字后的检索字符串,语法是一样的。

    DataRow[] rows1 = dt.Select("姓名='张' and 编号=1");
    DataRow[] rows2 = dt.Select("姓名='张' or 成绩>'60'");
  • 相关阅读:
    强大的C#图形处理组件
    Spring整合Mybatis的注意事项
    Umbraco常见陷阱与错误模式
    Umbraco 官网阅读理解
    Umbraco模型默认属性
    无缝隙滚动跑马灯组件
    这才是正确删除 office 的方式
    SVN利用Hooks自动发布网站
    Umbraco安装权限问题
    EPiServer网文
  • 原文地址:https://www.cnblogs.com/yy1234/p/7610681.html
Copyright © 2011-2022 走看看