DataTable的用法小结

来源:互联网 发布:精算 知乎 编辑:程序博客网 时间:2024/06/06 04:36

1.DataTabe 简介

   DataTable是一个临时保存数据的网格虚拟表(表示内存中数据的一个表即存储在内存中的表。)。DataTable是ADO dot net 库中的核心对象。它可以被应用在 VB 和 ASP 上。它无须代码就可以简单的绑定数据库。它具有微软风格的用户界面。

2.使用DataTable

a.构造

DataTable() 不带参数初始化DataTable类的实例;

DataTable(string TableName)制定表名初始化DataTable类的实例;

DataTable(string tableName, string tableNamespace) 用指定的表名和命名空间初始化DataTable 类的实例。

b.通过DataSet获取DataTable(DataSet是数据集)

DataTable dt =ds.Tables["表名"];

c.通过DataRow自定义DataTable的结构

DataTable dt = new DataTable();
           //添加列
            dt.Columns.Add("");
            dt.Columns.Add("");
            dt.Columns.Add("");
             .....

         便利DataTable
            foreach(DataRow dr in dt.Rows)
            {
                DataRow dr = dt.NewRow();
                dr[0] = dr[""];
                dt.Rows.Add(dr);
            }

d.通过已有的DataTable得到新的DataTable

可以使用DataTable.Clone()方法获得现有DataTable的表的结构

e.通过DataAdapter填充DataTable

 private DataTable GetDatable()
        {
            try
            {   
                string strConn = "server=.;integrated security=true;database=OPCClient";
                string sql = string.Format("select .....................................");
                //连接数据库
                SqlConnection sqlConn = new SqlConnection(strConn);
                sqlConn.Open();
                ////查询后存入DataTable
                DataTable dt = new DataTable("");

                sqlComm = new SqlCommand(sql, sqlConn);
                sqlComm.CommandTimeout = 400;
                SqlDataAdapter DA = new SqlDataAdapter(sqlComm);

                DA.Fill(dt);
                DA.Dispose();
                //返回DataTable
                if (dt.Rows.Count == 0)
                {
                    return null;
                }
                else
                {
                    return dt;
                }
            }
            catch (Exception err)
            {
                return null;
                throw err;
            }
            finally
            {
                if (sqlComm != null)
                {
                    sqlComm.Dispose();
                }
            }
        }

f.通过DataRow 数组导入DataTable

DataRow [] drs;

foreach(DataRow dr in drs)

{

dt.ImportRow(dr);

}


 笔者初学c#此随笔为加深印象,并不详细具体  借鉴自http://www.cnblogs.com/annabook/p/3599911.html

原文介绍非常细致,贴此链接供大家学习

0 0
原创粉丝点击