create table的时候将indentity加进去,然后insert into.....select.....

解决方案 »

  1.   

    我的主要问题不是在新表上,这个表已经建 好了,(这两个表都有id)
    我多了一个userid字段,这个参数
    insert into 怎么实现
      

  2.   

      ADOQuery1.SaveToFile('c:\temp\1.xml',pfXML);
      ADOQuery2.LoadFromFile('c:\temp\1.xml');
      

  3.   

    sql.add('insert into try2(userid,trya1,trya2) select try1,try2 from try1');我还想加一个参数,比如::userid
    该怎么写
    sql.add('insert into try2(userid,trya1,trya2) values(select try1,try2 from try1,:userid');行吗?
      

  4.   

    sql.add('insert into try2(userid,trya1,trya2) values(select try1,try2 from try1,:userid');
    这样是不行的,我已经试过了。,我该怎么办?
      

  5.   

    query.sql.add('insert into table1(userid,trya1,trya2) select :userid,trya1,trya2 from table2 where ...);
    query.parambyname('userid').asstring := 'value';parambyname('userid').asinteger(asstring、asfloat...)根据userid的类型设置 如果 userid是自动编号类型,不用插入,这个字段,数据库会自动加入的。
      

  6.   

    to:geminii() 第一:userid非自动编号类型
    第二:我的table2中只有两个字段,
    你的select :userid,trya1,trya2 部分多了一个参数,:userid,
    我的程序运行时,
    报错提示:查询值的数目与目标字段中的数目不同。query.sql.add('insert into table1(userid,trya1,trya2) select :userid,trya1,trya2 from table2 where ...);
    query.parambyname('userid').asstring := 'value';
      

  7.   

    :userid并不是table2的参数,可以是随意的,它的值在sql语句外面设置了,其实也可以直接将值带到sql语句里面的。
    假如userid是integer类型,其值是1的话,可以这么写:
    query.sql.add('insert into table1(userid,trya1,trya2) select 1,trya1,trya2 from table2 where ...);