标题:按记录数分成不同库
只看楼主
meboy88
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-5-19
结帖率:100%
已结贴  问题点数:5 回复次数:3 
按记录数分成不同库
请教下,我有一个14760记录的表,我想按照每5000条记录,生成一个以记录数命名的dbf,比如A5000、A10000,代码应该怎么写啊?
我自己的思路是这个:

n=0
for i=1 to reccount()
n=i+5000
select * from A where recno() between  i and n into dbf  'Ai'
搜索更多相关主题的帖子: between where 记录 命名 
2013-07-09 08:56
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
得分:0 
程序代码:
sele * fromwhere recn()<=5000 into dbf A5000

sele * fromwhere recn() betw 5001 and 10000 into dbf A10000

sele * fromwhere recn()>10000 into dbf A15000

2013-07-09 09:08
meboy88
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-5-19
得分:0 
回复 2楼 tlliqi
还想再请教一下,如果我想按500条来分,在循环里做呢?
2013-07-09 09:18
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:5 
SELECT CTABNAME
N=5000 && 可以修改N的值,随便多少条记录生成一个表
FOR I=1 TO CEILING(RECCOUNT()/N) && 根据N值的不同,可以生成CEILING(RECCOUNT()/N)个表
    SELECT * FROM CTABNAME WHERE RECNO()>(I-1)*N AND RECNO()<=I*N INTO TABLE [A]+TRANSFORM(I*N)
ENDFOR

[ 本帖最后由 sdta 于 2013-7-9 09:52 编辑 ]

坚守VFP最后的阵地
2013-07-09 09:23



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-416949-1-1.html




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

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