1.需要几个ADOQuery?
2.insert into tableB(*,*) select from tableA(*,*)中是不是tableA和tableB的结构要完全一样?谢谢!

解决方案 »

  1.   

    举例:
    1.表A中有三个字段:x_a,x_b,x_c
    2.表B中只有两个字段:l_a,l_b
    3.现在要将表A的x_b,x_c字段插入到表b中去:INSERT INTO b(l_a,l_b)
           SELECT x_b,x_c
           FROM A
      

  2.   

    举例:
    1.表A中有三个字段:x_a,x_b,x_c
    2.表B中只有两个字段:l_a,l_b
    3.现在要将表A的x_b,x_c字段插入到表b中去:INSERT INTO b(l_a,l_b)
           SELECT x_b,x_c
           FROM A
      

  3.   

    DELPHI 方式:1.表A中有三个字段:x_a,x_b,x_c 
    2.表B中只有两个字段:l_a,l_b 
    3.adoquery1连接表A(select x_a,x_b,x_c from a),adoquery2连接表A(select l_a,l_b from b),
    3.现在要将表A的x_b,x_c字段插入到表b中去:   
     with adoquery1 do begin
      First;
      while not eof do begin
       adoquery2.Append;
       adoquery2.FieldValues['l_a']:=FieldValues['x_b'];
       adoquery2.FieldValues['l_b']:=FieldValues['x_c'];
       adoquery2.Post;
       next;
      end;
      

  4.   

    那这段code其实是不是已经把查找和添加都包含进去了?
    完整的就应该是例如
    INSERT INTO b(l_a,l_b)
           SELECT x_b,x_c
           FROM A Where x_a like/= '***'这样的?不好意思,我比较菜啊
      

  5.   

    adoquery1连接表A(select x_a,x_b,x_c from a)
    adoquery2连接表A(select l_a,l_b from b)ADOQUERY1显示三个字段,adoquery2显示两个字段:
    也可以定条件:INSERT INTO b(l_a,l_b) 
          SELECT x_b,x_c 
          FROM A Where x_a='12345'{意思是将表A中,X_A等于12345的记录的x_b,x_c这两个字段插入到表B中的l_a,l_b字段中去}
      

  6.   

    楼上的解释的很清楚,是我的问题,我以前没有好好学习,我对Query不是很了解
      

  7.   

    1.两表列数量一样,对应的每个字段数据类型也一样,整表直接插入:
    insert into tableB select * from tableA2.只需要某些列:
    insert into tableB(A1,B1) select(A2,B2) from tableA
    A1与A2; B1与B2 数据类型要一样,兼容的也行
    3.两表列数量不一样,整表插入,如:
    tableB有五列A1,B1,C1,D1,E1; tableA 有3列 A2,B2,C2;insert into tableB(A1,B1,C1) Select * from tableAD1,E1列内容将为Null
      

  8.   

    为什么我把 insert into TABLE_A(a,b) select (a,b) from TABLE_B where c=''写入query.sql.add 运行后
    ,程序提示我from clause 错误?
      

  9.   

    Insert into table_a (a, b) Select a, b from table_B
      

  10.   

    ADOQUERY只复杂提交执行SQL
    至于是什么SQL 他不关心
    所以一个就够了
      

  11.   

    ADOQUERY只复杂提交执行SQL
    至于是什么SQL 他不关心
    所以一个就够了
      

  12.   

    ADOQUERY只复杂提交执行SQL
    至于是什么SQL 他不关心
    所以一个就够了
      

  13.   

    为什么我输入'Insert Into Temp(ID, 名称) Select (ID, 名称) From BOOK Where 名称 like ''%' + Trim(Edit1.Text) + '%'';TEMP和BOOK是表名,提示说逗号错误,然后我把select后的()去掉后有说会在索引中创建双重值,还是错误,请问是怎么回事?
      

  14.   

    'Insert Into Temp(ID, 名称) Select ID, 名称 From BOOK Where 名称 like ''%' + Trim(Edit1.Text) + '%''; 
    -
    select后面不能有扩号
      

  15.   

    The changes  you requested to the table were no successful because they would create duplicate values in the index, primary key, or relationship. change the date in the field or fields that cantain duplicate data,remove the index or redefine the index to permit duplicate entries and try again但是我的主键没有重复的啊