zoukankan      html  css  js  c++  java
  • DataTable类Clone及Copy方法的区别

    初学者可能不清楚DataTable类的Clone及Copy方法的区别,查msdn,可得到如下结论:

    DataTable.Clone 方法:克隆 DataTable 的结构,包括所有 DataTable 架构和约束。

    DataTable.Copy 方法:复制该 DataTable 的结构和数据。

    我们可以编写如下的程序,进行验证:

            static string connStr = "Server=.\\sqlexpress;Initial Catalog=hr;Integrated Security=True";

            static void Clone()
            {
                using (SqlConnection conn = new SqlConnection(connStr))
                {
                    string sql = "select * from emp";
                    SqlDataAdapter da = new SqlDataAdapter(sql, conn);
                    DataTable dt = new DataTable();
                    da.Fill(dt);
                    DataTable dtClone = dt.Clone();
                    Print(dtClone);
                }
            }

            private static void Print(DataTable dtClone)
            {
                foreach (DataColumn col in dtClone.Columns)
                {
                    Console.Write(col.DataType+"\t");
                }
                Console.WriteLine();
                foreach (DataRow row in dtClone.Rows)
                {
                    Console.Write(row[0] + "\t" + row[1] + "\t" + row[2] + "\n");
                }
                Console.WriteLine();
            }
            static void Main(string[] args)
            {
                Clone();//仅仅复制表结构
                Copy();//复制表结构及数据
                Console.ReadKey();
            }

            private static void Copy()
            {
                using (SqlConnection conn = new SqlConnection(connStr))
                {
                    string sql = "select * from emp";
                    SqlDataAdapter da = new SqlDataAdapter(sql, conn);
                    DataTable dt = new DataTable();
                    da.Fill(dt);
                    DataTable dtCopy = dt.Copy();
                    Print(dtCopy);
                }
            }
        }

  • 相关阅读:
    尝试一个“建立知识”的过程
    webscheduler 开源定时服务和延迟服务
    两款自定义表单设计器
    IIS应用池保持激活工具开发
    写文章 使用conda管理python环境
    conda 虚拟环境
    Java设计模式
    转:数据标准化/归一化normalization
    转:理解矩阵
    转:为何梯度反方向是函数值下降最快的方向
  • 原文地址:https://www.cnblogs.com/zhouhb/p/2940147.html
Copyright © 2011-2022 走看看