直接
DataSet dataSet2 =dataSet1.Copy();
数据不就dataSet1的数据不就拷贝过来了吗,何必如此麻烦.

解决方案 »

  1.   

    创个TABLE与Dataset1中表结构一样 
    DataTable dt = DataSet1.Tables[0].clone;
    使用dt.newrow().itemarry = DataSet1.Tables[0].rows[0].itemarry
      

  2.   

    顶merge应该是可行的,没试过
      

  3.   

    to chsfly(一蓑烟雨任平生) : 没办法,要求这样,想用型付DataSet的一些特性。
    to flyinglz(云溪飘叶) :难道 dt = DataSet1.Tables[0] 和 dt = DataSet1.Tables[0].clone不同?我试了一下,还是不行。
      

  4.   

    是啊,如果使用merge方法,需要注意两个dataset或datatable 或datarow 的结构是否一样。
    如果一样的话,直接使用dataset1.merge(table2)即可。
      

  5.   

    pls make sure the stru of the two datatables are equal
      

  6.   

    how to make sure that the two dataset are equal ?
      

  7.   

    不知你所说的"型付"是什么意思.如果按flyinglz(云溪飘叶)的方法做一定保证dataSet1和dataSet2的结构相同.
      

  8.   

    to chsfly(一蓑烟雨任平生) : "型付"就是用.net“画”成的一个DataSet
    如果按flyinglz(云溪飘叶)的方法:
       创个TABLE与Dataset1中表结构一样 
       DataTable dt = DataSet1.Tables[0].clone;
       使用dt.newrow().itemarry = DataSet1.Tables[0].rows[0].itemarry
    只能保证这个dt与DataSet1中的DataSet1.Tables[0]完全一致,不能保证dataSet1和dataSet2的结构相同
      

  9.   

    请大家再看一下这一段:
    数据库中的table定义:
    create table myTable
    (
      name    varchar2(10),
      flag    number(1,0),
      money   number(6,2)
    )
    dataSet1中存放的是从myTable中读取的所有数据记录(select * from myTable)
    注:myTable中只有一条记录('小明', 1, 123.45)dataSet2是自己用.net做成的一个DataSet(是不是叫什么型付dataset),结构如下:
        name    string
        flag    int
        money   double我就想知道这两个DataSet是不是结构一致呢?
      

  10.   

    DataSet dataSet2 =dataSet1.Clone();这样就可以保证结构相同了.
      

  11.   

    你说的是如何“做出来”两个相同结构的DataSet。现在情况是两个DataSet已经存在,如何知道他们结构是否相同呢?
      

  12.   

    我发现用来存储数据库数据的DataSet中,如果DB中的数据是NUMBER型,那么这个DataSet中的对应的字段是decimal型的:
    <xs:element name="ColumnName" type="xs:decimal" minOccurs="0" />
    但是我自己在.net中做的DataSet是int型或者double型的,这两者的不匹配算不算DataSet结构的不匹配?