两个库的表结构相同,
  
adoczbz:=Tadoquery.Create(nil);
         adoczbz.Connection := datacon.ADOConnection1 ;
         with adoczbz do
           begin
             close;
             sql.Clear ;
             ysql:='insert into   ":adoconnnection1:kjqj"+
                '  SELECT *  FROM  ":adoconnnection12:kjqj" where '+
                   ' 人员编号 ='''+czpbh+'''';
             sql.Add(ysql) ;
            execsql;
           end;
      end;我怎么用不了?

解决方案 »

  1.   

    你这样写的delphi不报错???才怪!kjqj是表名还是库名????
      

  2.   

    表结构一样?还有你的SQL 中的语句是否正确通过调试验证
      

  3.   

    kjqj是表名,
      你说该怎么写,
        我是用ADO动态连接两个库,我要将一个表中的记录写入论一个表中?
      大哥,帮个忙,该怎么写?
      

  4.   

    因为adoczbz的Connection已经是doconnnection1了如果是sqlserver数据库,那么sql那段应该是
    'insert into kjqj '+
    'SELECT *  FROM  '+adoconnnection2.DefaultDatabase+'.dba.kjqj where '+
    ' 人员编号 ='''+czpbh+'''';
      

  5.   

    var 
    t1:string;//数据库加表名
    T2:string//数据库加表名
    begin
    T1:=‘DATABASE1..KJJS’
    T2:=‘DATABASE2..KJJS'adoczbz:=Tadoquery.Create(nil);
             adoczbz.Connection := datacon.ADOConnection1 ;
             with adoczbz do
               begin
                 close;
                 sql.Clear ;
                 ysql:='insert into   '+t1+
                    '  SELECT *  FROM  '+T2+' where  人员编号 ='''+czpbh+'''';
                 sql.Add(ysql) ;
                execsql;
               end;
          end;
      

  6.   

    jtx1226(幻若雪晴):
      你这怎么行不通,怎么回事啊?
    我用的是ADOCONNECTION连的,没有别名?
      

  7.   

    我原为你用的SQL SERVER 这样可以,但ACCESS我没试过,
    DATABASE 是数据库名 KJJS是表名
      

  8.   

    我用得是两个ADOconnection直接连接两个不同路径下得ACCESS数据库,但是两个数据库得名称和表得结构是一样得,我选取第一个库中某一条得数据写入第二个数据库中?怎么跟数据库取别名,
      我没有用过BDE,你能不能举个列啊?
        我等你得消息?
      

  9.   

    'insert into  '+adoconnnection1.DefaultDatabase+
    '文件名1.mdb.表1 SELECT *  FROM  '+adoconnnection2.DefaultDatabase+
    '文件名1.mdb.表2 where  人员编号 ='''+czpbh+'''';我帮调试过一了
    一切OK:)
    有事给我发短消息