日期:2014-05-17  浏览次数:20972 次

多线程如何向一个DataSet中填充信息
刚接触数据库编程..

有10个数据库,query每一个数据库都会返回相同格式的结果,比如
title name age
xxx   xxx  xx

我想吧5根进程返回的内容都附加到同一个dataset的同一个table里,然后显示到datagridview里面..

可是没有实现附加,只能够替换table里的内容


每个进程返回的数据格式完全一样的
线程1-5都会返回这样的内容,也用lock锁吧dataset锁住了
title name age
xxx   xxx  xx
数据库 dataset dataadapter 线程

------解决方案--------------------
引用:
Quote: 引用:

它们各自都返回了一个Table,返这个Table转换成类,当多个线程都查询完成了,再就union把多个结果连接起来,也能达到你的效果.

你都放到同一个DataSet的同一个Table,还得多做一个步骤. union 可以直接连接查询的结果集


像这样么..
select * from dbo.qunlist1 where Title like '%keyword%' union select * from dbo.qunlist2 where Title like '%keyword%'

不知道这样的效率和多线程查询的效率比起来那个更快些啊
刚接触这个不要笑话哈


直接用select 语句union 连接查询最快.就是用你这个方法.