数据复制

我和我的蓝天白云 2005-03-05 09:28:41
var s:string;

dm.table1.open;
dm.table2.open;

while not dm.table1.eof do
begin
s:=dm.table1.fieldbyname(field1).asstring;
if not dm.table2.locate(field1,s,[]) then
dm.table2.append;
dm.table2.fieldbyname(field1).asstring:=s;
dm.table2.post;
dm.table1.next;
end;


目的:将table1中的field1的值不重复的复制到table2的field1 中,
table1中有6000条记录,不重复值有400条左右,
上述代码运行速度实在太慢了,
是否有更快的方法?

请教了!!
...全文
80 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
monkely 2005-03-05
  • 打赏
  • 举报
回复
注意字段要对应
monkely 2005-03-05
  • 打赏
  • 举报
回复
SQL语句 "insert into table1 (fields) select distinct fields from table2
  • 打赏
  • 举报
回复
注意:table2 是已经存在的表,上述代码运行是系统提示table2已经存在,程序出错了!!!
monkely 2005-03-05
  • 打赏
  • 举报
回复
楼上的都说出来了。
qxhou 2005-03-05
  • 打赏
  • 举报
回复
分给我吧,分是我的了.
qxhou 2005-03-05
  • 打赏
  • 举报
回复
With adoquery1 do
begin
close ;
sql.clear ;
sql.add('select distinct field1 into table2 from table1') ;
open ;
end ;
  • 打赏
  • 举报
回复
能否给出点实现的代码,谢谢!
monkely 2005-03-05
  • 打赏
  • 举报
回复
直接用SQL语句来操纵

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧