如能解决,分不成问题,我可以再开贴给分!

解决方案 »

  1.   

    我的做法比较笨:打开access->导入数据库,把全部文件导入,变成所有table都在一个文件里,然后用access的查询功能(就是sql的jion)做好一个表,直接操作这个表就可以了,而且比较快。
    外部用sql应该不能进行文件间的操作,因为每操作一个数据库文件都要建立连接。
    关注!
      

  2.   

    作一个临时表,循环所有的数据库,将搜索到的记录写入,最后送到dbgrid显示。
      

  3.   

    如果是同一数据库中的表,可以用
    select * from b1 union all  select * from b2 来显示数据,不过不能在dbgrid中更改数据,更改数据可以用
    update b1,b2  x set b1.mc='car' ,b2.mc='car' where b1.dm=2 and b2.bm=2,
    如果是不同数据库中的不同的表,可以用
    select * from b1 union all  select * from [db2].[b2]来显示数据, 也不能在dbgrid中更改数据,也不能用update更新数据.其实可行的更新方法还是确定好条件后,对每个表都执行一次sql.
      

  4.   

    听人说把十个表连在一起SELECT已经很慢了
    你自己考虑把
    我都是做小软件
    比较少
    我还没有把10个表连过在一起
    哈哈
      

  5.   

    我做过类似的软件!比你这个还要复杂!
    不要使用临时表,这是最慢的方法!:)(不好意思!这是我的体会,各位
    我没有别的意思)用UNION来操作!
    例如:
    select * from 
    (
      select * from table1
      union
      select * from table2
      union 
      select * from table3
      .
      .
      .
    )
    where 你的条件
    group by ...having....//这一行你可以不写
    建议你用多线程, 不然的话,在查询的时候会发生类似于死机的现象!另外,还要注意表的结构要一致辞才行!  共同进步!
                                 天才白痴
      

  6.   

    把表名改成连着的数值比如1...99,然后用循环语句对每个表都执行查询并取出符合要求的数据,因为SQL语句是一样的,然后再把数据写入新表。
      

  7.   

    急需这个问题,楼上解决后能否发源代码到: lan_armao At sina.com
      

  8.   

    严重同意  superclod(天才白痴) (  )
      

  9.   

    http://www.csdn.net/Develop/read_article.asp?id=9581
    每个数据库保持一个连接的话,资源消耗太多
    建议建立一个数据库连接池
    要使用一个数据库连接来遍历的话,可能在显示某一项的时候要动态打开/关闭数据库,速度太慢
      

  10.   

    1、把所有的数据库放到一个目录中,然后遍历该目录,把所有的数据库名放在一个表中,然后循环这个表。
    2、用上表的数据库名做字段,循环写写读每个库里面的数据,如果表名不一样还得写一个得到数据库中所有表的程序在放一个临时的表中,在套着循环,也就是说每次只对一个数据库的一个表进行处理,把选出的数据用SELECT INTO 统统的放到一个大的表中。
    总结: a、便利目录,将数据库名存放在一个表中
           b、写读一个数据库中表名的过程,将表名放在一个临时的表中。
           c、对单独的表进行SLECT 把选出来的数据放到一个提前设计好的表(和你的表结构一样)中。
           d、最后对这个大的表进行处理 。不知行否! 要根据你数据库的复杂程度和统一成度来计算复杂度的。