怎样在一个ACCESS中复制一条记录?

fenglhua 2004-02-02 11:23:09
怎样在复制一条记录并插入表中,还有如果我是要剪切一条记录应该怎么办?请大家帮忙,先谢谢了.
...全文
534 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
haipin 2004-02-03
  • 打赏
  • 举报
回复
因为你的WBS工作包这个表没有主键。
fenglhua 2004-02-03
  • 打赏
  • 举报
回复
还是不行呀,hushaoshu2(西门吹雪),你能帮我试一试吗?谢谢了!
  • 打赏
  • 举报
回复
注意,刚才讲的最后的更新语句的条件应该这样:
where id<1
  • 打赏
  • 举报
回复
你这数据表如果有关键字段的话,这种操作肯定不行。因为你直接复制,关键字段也复制了!
我建议把SQL语句改为如下:
insert into WBS工作包(字段名1,字段名2,……) select 字段名1,字段名2,…… from WBS工作包 where ID=9;
注意,上面SQL语名中的字段名列表不能包含关键字段!
执行完毕后,再用一句SQL更新语句更改关键字段的值就可以了:
update WBS工作包 set id=10 where 条件;
应该就可以了。
fenglhua 2004-02-03
  • 打赏
  • 举报
回复
我的程序出错了,请帮忙看看,先谢谢了
adoquery1.Open;
adoquery1.Insert;
adoquery1.SQL.Add('insert into WBS工作包 select * from WBS工作包 where ID=9');
adoquery1.Post;
adoquery1.Close;
chenylin 2004-02-02
  • 打赏
  • 举报
回复
Insert into table select * from Table where id='123'
注意插入重复值的问题,最好建一个自增主键.
hthunter 2004-02-02
  • 打赏
  • 举报
回复
insert into table_a(a, b, c)
select d, e, f
from table_b
where 条件

如果是剪切,那执行完上面的再
delete from table_b
where 条件
licun8223 2004-02-02
  • 打赏
  • 举报
回复
先把要插入的记录读出来,然后进行插入
surdon 2004-02-02
  • 打赏
  • 举报
回复
这个方法不行吗
比如先读出来

ADOQuery1.Insert;
ADOQuery1.FieldByName('你要的').AsString:=ADOQuery2.FieldByName('名称').AsString
ADOQuery1.post;

剪切一条记录
上面是先把它读出来然后
把这条记录删除就不就行了吗
maycy 2004-02-02
  • 打赏
  • 举报
回复
帮顶

5,930

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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