| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3375 人关注过本帖
标题:如何将 dbf 表中的某条数据插入都指定位置
只看楼主 加入收藏
shyoow
Rank: 2
等 级:论坛游民
帖 子:42
专家分:14
注 册:2013-1-30
结帖率:88.89%
收藏
已结贴  问题点数:20 回复次数:21 
如何将 dbf 表中的某条数据插入都指定位置
我需要把文件100010sbk.dbf中的第179条数据插入到第1000条数据之后(数据总条数不变,只是位置稍作调整),请问该如何实现?谢谢各位!
搜索更多相关主题的帖子: 如何 
2014-04-19 22:14
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9831
专家分:27165
注 册:2012-2-5
收藏
得分:10 
程序代码:
Close DataBases
Use sbk Alias sbk && 数据表名称禁用数字开头
Go 179
Scatter to Ajl
Go 1000
Insert Blank
Gather From Ajl
Delete For Recno()=179
Pack


坚守VFP最后的阵地
2014-04-19 22:26
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9831
专家分:27165
注 册:2012-2-5
收藏
得分:0 
楼主为什么有这种需求啊,能说明一下吗

坚守VFP最后的阵地
2014-04-19 22:30
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:5 
我曾經試過不是所有字段都可以Scatter和Gather的,特別是備註型字段。

授人以渔,不授人以鱼。
2014-04-19 22:44
shyoow
Rank: 2
等 级:论坛游民
帖 子:42
专家分:14
注 册:2013-1-30
收藏
得分:0 
以下是引用sdta在2014-4-19 22:26:50的发言:

Close DataBases
Use sbk Alias sbk && 数据表名称禁用数字开头
Go 179
Scatter to Ajl
Go 1000
Insert Blank
Gather From Ajl
Delete For Recno()=179
Pack

有时候排好序的数据会有增减,排序命令不熟,因此会遇到这个问题比较多,谢谢版主
另外请教sdta版主,Ajl是什么,请解释下好吗?谢谢!

[ 本帖最后由 shyoow 于 2014-4-19 22:51 编辑 ]
2014-04-19 22:47
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9831
专家分:27165
注 册:2012-2-5
收藏
得分:0 
如果有备注字段,可以用 SELECT-SQL命令生成数组
再用 REPLACE 命令更新记录(FOR ENDFOR循环更新)

坚守VFP最后的阵地
2014-04-19 22:59
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9831
专家分:27165
注 册:2012-2-5
收藏
得分:0 
以下是引用shyoow在2014-4-19 22:47:19的发言:

 
有时候排好序的数据会有增减,排序命令不熟,因此会遇到这个问题比较多,谢谢版主
另外请教sdta版主,Ajl是什么,请解释下好吗?谢谢!
生成的数组
多看看帮助文件中的相关内容

坚守VFP最后的阵地
2014-04-19 23:00
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
回复 6 楼 sdta
讀寫記錄的時候直接用循環填寫和複製數組就是了,即自己寫兩個替代那兩個命令的函數,一般的用法。

授人以渔,不授人以鱼。
2014-04-19 23:15
shyoow
Rank: 2
等 级:论坛游民
帖 子:42
专家分:14
注 册:2013-1-30
收藏
得分:0 
以下是引用sdta在2014-4-19 22:26:50的发言:

Close DataBases
Use sbk Alias sbk && 数据表名称禁用数字开头
Go 179
Scatter to Ajl
Go 1000
Insert Blank
Gather From Ajl
Delete For Recno()=179
Pack

sdta版主的命令可以实现。相当于在第100条数据后添加一行,即第101条(此时为空),然后把第179条数据各个字段的内容粘贴到第101条数据中,然后删除原表中的第179条数据。Delete For Recno()=179这个里面“179”应该改为“180”才对,请版主核实下。非常感谢sdta版主和各位!
2014-04-19 23:30
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9831
专家分:27165
注 册:2012-2-5
收藏
得分:0 
以下是引用TonyDeng在2014-4-19 22:44:22的发言:

我曾經試過不是所有字段都可以Scatter和Gather的,特別是備註型字段。
看了下这两个命令的帮助文件
Scatter To Ajl memo &&将备注字段内容复制到数组中
Gather from ajl memo &&可以将数组内容替换备注字段内容

坚守VFP最后的阵地
2014-04-19 23:38
快速回复:如何将 dbf 表中的某条数据插入都指定位置
数据加载中...
 
   



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

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