| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2236 人关注过本帖
标题:如何将一个表的记录追加到另一个表里
取消只看楼主 加入收藏
navigationli
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2020-5-14
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:3 
如何将一个表的记录追加到另一个表里
KCK (6条记录)
KW  (4条记录)
两个表之间没有主关键字段可用,两表行数是一样的
通过命令方式,把1图KCK(shum,dj,sjcbsj)共6条记录追加最后尾部的两条记录给 2图KW尾部(kw,其他字段原记录依然保留),最终完成3图效果
图1KCK
图片附件: 游客没有浏览图片的权限,请 登录注册


图2KW
图片附件: 游客没有浏览图片的权限,请 登录注册

图3KW
图片附件: 游客没有浏览图片的权限,请 登录注册




[此贴子已经被作者于2020-5-14 16:10编辑过]

搜索更多相关主题的帖子: 其他 表里 追加 尾部 记录 
2020-05-14 15:59
navigationli
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2020-5-14
收藏
得分:0 
首先谢谢以上二位提供的解决问题的思路,我的初衷是解决两个表之间对应字段的记录追加,1表(KCK)如果有1000条,2新表(KW)有800条,他们两表有共有的字段(2新表KW也有自己的新字段),需要把1表800记录号以后的那200条按原顺序追加到2表里,二楼哥们,我执行后提示语法错误。后来我自己写了一段,但每次都要执行一次,才能逐条从KCK 800记录...后,去取一条追加到2新表,现在要问的是这个循环应该怎么写呢?而且最后当两个表记录数(行数)完全一致时,要求退出循环(否则就会一直往新表里加空的记录行)。附以下代码:
use kck.dbf   
a=recc()  &&统计记录个数  
use kw.dbf  
b=recc()  
c=a-b-1  &&统计未追加的记录个数  
use kck.dbf  
go bott &&到最后一条记录底部  
skip -(c) &&从最后一条记录算,定位到 倒数第几条记录 (要添加给KW的记录)
&&以下执行一次只能增加一条记录,需要循环处理,判断KCK 和 KW是否为记录底部(行数一致都为1000条时),为底部时终止循环
Scat field shum,dj,mbcs,sjcbsj to aa
use e:\xkw\kw.dbf
Go bott
Appe blank
gath field shum,dj,mbcs,sjcbsj from aa
brow  
红色部分是两表共有字段,黄色为2新表KW独有字段,因为KCK每隔一段时间就会增加新的记录,所以才想写个程序,自动可以追加的2新表里,再用2新表做别的查询
图片附件: 游客没有浏览图片的权限,请 登录注册




[此贴子已经被作者于2020-5-16 09:04编辑过]

2020-05-16 08:41
navigationli
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2020-5-14
收藏
得分:0 
感谢 @ mywisdom88 及sdta 二位的引导和帮助,现已调试成功,真是令我等醍醐灌顶.说些旁的,感觉在EXCEL里很简单的行和列操作,剪切粘贴,在VFP里实现如此复杂。很佩服前人所做的努力。代码附下,亲测有用!
set defa to e:\xkw
use kck.dbf   
a=recc()  &&统计记录个数  
use kw.dbf  
b=recc()  
c=a-b-1  &&统计未追加的记录个数  
close all
?c
use kck in 0 && 注意表的路径
use kw in 0 && 注意表的路径
select shum,dj,mbcs,sjcbsj from kck where recn()>=recc()-c into array _kck && recn()>=recc()-记录(行)差,好像就是最后N条的意思,字段属性的结构和顺序要和KCK一致KCK.dbf  shum c(42) dj n(7.2) mbcs n(6) sjcbsj D(8)

select kw
append from array _kck
2020-05-17 11:52
navigationli
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2020-5-14
收藏
得分:0 
以下是引用mywisdom88在2020-5-16 13:13:21的发言:


*!* VFP 9.0
use kck in 0 && 注意表的路径
use kw in 0 && 注意表的路径
select * from kck where recn()>=recc()-200 into array _kck && recn()>=recc()-200,好像就是最后200条的意思,没测试
select kw
append from array _kck

谢谢大卡,亲测有效!!!!!
2020-05-17 11:53
快速回复:如何将一个表的记录追加到另一个表里
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018491 second(s), 12 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved