我在做数据库迁移的时候因为特殊的原因要按列向一个空表中插入数据,但是插入完第一列之后有问题了,所以我想用update第一列之后的列。希望能提供代码!~重要是思路方法!部分代码如下:
 for i:=1 to adoquery1.RecordCount do          //根据节点内容循环迁移数据
              begin
                col:=adoquery1.fieldbyname(v2).AsString;
                if j=0 then                               //判断变量j来决定insert/update
                  begin
                    with adoquery2 do
                      begin
                        sql.Clear;
                        sql.Add('insert into '+v3+'('+v4+')');
                        sql.Add('values(:col)');
                        parameters.ParamByName('col').Value:=col;
                        prepared:=true;
                        execsql;
                      end;
                      adoquery1.Next;
                  end
                else
                  begin
                    with adoquery2 do                            //update记录
                      begin
                        sql.Clear;
                        sql.Add('update '+v3);
                        sql.Add('set '+v4+'=:col');
                        parameters.ParamByName('col').Value:=col;
                        prepared:=true;
                        execsql;
                      end;
                    adoquery1.Next;
                 end;
              end;这样update的值都是源表的最后一条记录的值,真郁闷。怎么改都不对!