stwql 发表于 2006-8-3 15:06

【请教】关于vfp数据复制的命令.

我想将名为1.dbf的表里的ID从20060701到20060799的内容复制到名为2.dbf的表的内容的后面.

请问这个命令应该怎么写?谢谢~

注:两个表的结构一样.

最好写出直接的命令,因为偶不懂vfp.:(:(

PCCMWAP 发表于 2006-8-3 16:42

stwql 发表于 2006-8-3 18:00

原帖由 PCCMWAP 于 2006-8-3 16:42 发表
SELECT 1
USE 1.DBF
SELECT 2
USE 2.DBF
APPEND FROM 1 FOR BETW(ID, 20060701, 20060799)
CLOSE ALL
好像不行.:(

PCCMWAP 发表于 2006-8-3 20:41

stwql 发表于 2006-8-3 21:17

回车后没什么提示.然后我在看2.dbf也没什么改变.

stwql 发表于 2006-8-3 21:24

说实话,我不知道该怎么操作.也许是操作的不对.

我是先打开1.dbf和2.dbf.
然后复制
SELECT 1
USE 1.DBF
SELECT 2
USE 2.DBF
APPEND FROM 1 FOR BETW(ID, 20060701, 20060799)
CLOSE ALL
到命令窗口粘贴.回车.

没反应..

zmq 发表于 2006-8-3 23:01

不熟悉VFP,虽然“学”过好几遍了

ypsxk 发表于 2006-8-4 01:28

use 1
locate for id=20060701
copy next 99 to 3
use 2
append from 3

PCCMWAP 发表于 2006-8-4 09:08

PCCMWAP 发表于 2006-8-4 09:12

PCCMWAP 发表于 2006-8-4 09:17

stwql 发表于 2006-8-4 09:23

原帖由 PCCMWAP 于 2006-8-4 09:17 发表
另外,我估计你是将这段指令直接"复制"然后"粘贴"到VFP的命令窗口里面了,对吧?

这是不行的,因为你直接粘贴内容的话,VFP只将它看作一个回车符号,相当于你直接打入一个回车, 这样当然什么提示 ...
看样子我是太懒了.:D

另外还有个疑问.如果我输入这些命令的话.vfp怎么会在没有文件路径的情况下找到我硬盘上的这些文件呢?

还有,我的表是按ID序列排列的.我要复制的是20060701-20060799之间的这些文件.

没故事的男孩 发表于 2006-8-4 09:25

应该一条一条命令的打呀

stwql 发表于 2006-8-4 09:38

输入locate for id=20060701的时候提示"操作类型不匹配"..

PCCMWAP 发表于 2006-8-4 09:39

PCCMWAP 发表于 2006-8-4 09:43

stwql 发表于 2006-8-4 10:42

原帖由 PCCMWAP 于 2006-8-4 09:43 发表
看来,你数据表里的不是数字型的, 应该是字符型的, 那就这样吧:

LOCATE FOR ALLTRIM(ID)==ALLTRIM()

其中, ALLTRIM是指删除任何空格, "=="(连续两个等号)是字符串比较运算符,用来测试两个字符串是 ...
OK了,送上小花几朵,聊表谢意.

HOPE 发表于 2006-8-4 11:36

oracle的话通常是这样:
insert into dbf2 (select * from dbf2 where rowid >=20060701 and rowid <=20060799)

ks990ks 发表于 2008-5-7 08:55

:D **\ ^v^ *.*lll
页: [1]
查看完整版本: 【请教】关于vfp数据复制的命令.