dataset里加一个datatable问题(急)
dim dst as dataset
dim data as getdataClass(里面有很多取各种数据的函数,包括db连接)
data = new getdataClass
dst = new dataset
现在我定义了一个 datatable
dim table as datatable
table = new datatable
table = data.getdata(1).table(0) (已取到数据返回一个dataset 取它的table)
dst.Tables.Add(table) 程序到这里出错
table = data.getdata2.table(0)(取到第2批数据返回一个dataset 取它的table)
dst.Tables.Add(table)
我的目的是在一个dataset里面追加两个datatable 请高手指点
问题点数:30、回复次数:9Top
1 楼kyo198186(kyo pan)回复于 2005-01-10 11:48:38 得分 0
upTop
2 楼kyo198186(kyo pan)回复于 2005-01-10 13:19:13 得分 0
?????Top
3 楼brightheroes(在地狱中仰望天堂)回复于 2005-01-10 13:22:29 得分 0
table = data.getdata(1).table(0) (已取到数据返回一个dataset 取它的table)
dst.Tables.Add(table) 程序到这里出错
---》
table = data.getdata(1).table(0).Copy(); (已取到数据返回一个dataset 取它的table)
dst.Tables.Add(table) 程序到这里出错
data.getdata(1)返回1个DataSet,
你必须Copy里面的Table之后,才能给其他的DataSet用
Top
4 楼welshem(天堂客)回复于 2005-01-10 13:26:52 得分 0
同意楼上,一个DataTable实例只能属于一个DataSet
所以必段得到一个真正的副本才行
Top
5 楼conghui(万物苏醒)回复于 2005-01-10 13:32:33 得分 0
为什么不在调用的方法中返回值设为DataTable呢?那样不是更简单吗?Top
6 楼kyo198186(kyo pan)回复于 2005-01-10 13:39:46 得分 0
谢谢
table = data.getdata(1).table(0).Copy()
dst.Tables.Add(table) 现在没有错误了
不过
table = data.getdata(2).table(0).Copy()
dst.Tables.Add(table) 这里又有错误了 是怎么回事啊
Top
7 楼kyo198186(kyo pan)回复于 2005-01-10 13:41:57 得分 0
为什么不在调用的方法中返回值设为DataTable呢?那样不是更简单吗?
我那个取收据的class是别人写的 现在不能动,里面的函数都是返回dataset 郁闷阿Top
8 楼brightheroes(在地狱中仰望天堂)回复于 2005-01-10 13:44:53 得分 30
不过
table = data.getdata(2).table(0).Copy()
dst.Tables.Add(table) 这里又有错误了 是怎么回事啊
那是因为你调用的这个方法data.getdata(2).table(0)返回的TableName都一样....
修改为
table = data.getdata(2).table(0).Copy()
table.TableName = "xx";
dst.Tables.Add(table)
应该就可以了Top
9 楼kyo198186(kyo pan)回复于 2005-01-10 13:49:58 得分 0
这下可以了 非常感谢Top




