没有锁,具体代码:<br> try<br> with tbl1 do<br> begin<br> Close;<br> Open;<br> pb1.Visible := True;<br> pb1.Max := RecordCount;<br> First;<br> i := StrToInt(edt1.Text);<br><br> while not Eof do<br> begin<br> pb1.Position := RecNo;<br> mc := tbl1.FieldByName('name').AsString;<br> orcalqry := TADOQuery.Create(nil);<br> orcalqry.Connection := con2;<br> with orcalqry do<br> begin<br> Close;<br> SQL.Clear;<br> //SQL.Add('insert into test(name,id) values(''' + mc + ''',' + inttostr(i) + ')');<br> SQL.Add('insert into gzryxxb(rydm,xm) values(' + inttostr(i) + ',''' + mc + ''')');<br> ExecSQL;<br> Free;<br> end;<br> Next;<br> Inc(i);<br> end;<br>就是说第一次i=40000开始导是可以的,从库里把大于4000的删了,第二次导i=4000就不可以了,必须重启机器或者i<>40000就可以了。