并且要一次全部放入一个dbgrid中!多谢了

解决方案 »

  1.   

    我忘记access是否支持union了。
    sql server:
    select * from a
    where ...
    union
    select * from a
    where ...
      

  2.   

    可以,用如下语句
    select a.* from [db1].[b2] a,[db3].[b1] b where a.dm=b.dm
      

  3.   

    那Adoquery的connectionstring属性该如何写?
      

  4.   

    with adoquery1 do
      begin
        close;
        sql.clear;
        sql.add('select * from a where ... union select * from a where ...');
        oepn;
      end;
      

  5.   

    var
      connectstring:string;
    begin
      adoquery1.connectstring := 'Provider=SQLOLEDB.1;Password=' + Password + ';Persist Security Info=True;User ID=' + UserName + ';Initial Catalog=' + InitDB + ';Data Source=' + ServerName;
      with adoquery1 do
        begin
          close;
          sql.clear;
          sql.add(select a.* from [db1].[b2] a,[db3].[b1] b where a.dm=b.dm');
          oepn;
        end;
    这回该知道怎么写了吧?
      

  6.   

    你可以试试看加一个临时数据库,把符合的记录放到临时数据库里,之后打开,这样就很简单了!而且速度应该是很快的。
    select * into 临时库 from XXX where....select * into 临时库 from XXX where....select * into 临时库 from XXX where....
      

  7.   

    l_xiaofeng(流水不腐) 的补充就比较完整了.如果有多于两个数据库,就用
    select a.* from [db1].[b2] a,[db3].[b1] b [db4].[db4] c where a.dm=b.dm and b.dm=c.dm这样,以此类推