在VFP6.0中怎么使用append命令

qiaol_mail 2005-11-24 11:13:46
我有一个文本文件,是用字符"!"隔开的一些记录,想添加到表中去,怎么使用append命令啊。
我知道很简单,可是这是我MM问我的,我把命令格式发给她了,她还是搞不定。我这里又没法测试,哪位大侠能说的详细一些啊,多谢了。
...全文
1480 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
十豆三 2005-11-24
  • 打赏
  • 举报
回复
请参考:

从一个文件中读入记录,追加到当前表的尾部。

APPEND FROM FileName | ? [FIELDS FieldList] [FOR lExpression]
[[TYPE] [DELIMITED [WITH Delimiter | WITH BLANK | WITH TAB
| WITH CHARACTER Delimiter] | DIF | FW2 | MOD | PDOX | RPD |
SDF | SYLK | WK1 | WK3 | WKS | WR1 | WRK | CSV | XLS | XL5
[SHEET cSheetName] | XL8 [SHEET cSheetName]]] [AS nCodePage]
参数
FileName
指定从哪个文件中读入记录。如果给出的文件名不包含扩展名,则将文件默认为 Visual FoxPro 表,扩展名为 .DBF。如果文件是 Visual FoxPro 表,无论SET DELETED 为何种设置,表中标记为删除的记录也将添加到当前表中。
?
显示打开对话框,从中可以选择从哪个表中读入记录。
FIELDS FieldList
指定添加哪些字段数据。
FOR lExpression
为当前选定表中每一条 lExpression 为“真”(.T.) 的记录追加新记录,直至达到当前选定表的末尾。如果省略 FOR,则整个源文件记录都追加到当前表中。
TYPE
指定源文件类型。如果指定的源文件类型不是 Visual FoxPro 表,则必须指定文件类型,但不必包括 TYPE 关键字。您可以从各种类型文件(包括分隔 ASCII 文本文件)中读入信息添加到表中,在这些文件中可以指定字段分隔符。
如果要追加的源文件扩展名不是默认的扩展名,源文件名必须包括文件扩展名。例如,Microsoft Excel 工作表通常具有 .XLS 扩展名。如果要追加的 Microsoft Excel 工作表扩展名不是 .XLS,一定要指定扩展名。

注意 如果要追加的记录来自工作表,工作表中的数据必须以主行序而非主列序存储,这样才能使追加的工作表数据符合表结构。
DELIMITED
指定源文件为分隔数据文件。分隔数据文件是 ASCII 文本文件,文件中每条记录以回车和换行符结尾。各字段内容默认地由逗号分开,字符字段值还需要用引号括上。例如:
"Smith",9999999,"TELEPHONE"
所有分隔数据文件的扩展名默认为 .TXT 数据的格式。

如果日期格式正确,可以从分隔文件中导入日期数据,日期的默认格式为 mm/dd/yy。您还可以选择加入世纪信息。Visual FoxPro 导入的数据(如 12/25/95)不包含世纪信息,世纪信息的默认值为 20 世纪。日期分隔符可以为任意非数值字符,但不能使用分隔文件中字段的分隔符。

如果其他一些日期格式与 SET DATE 中可以使用的格式相匹配,Visual FoxPro 也可以导入这些格式的日期数据。若要导入非默认格式的日期,应在使用 APPEND FROM 前先发出 SET DATE 修改数据格式设置。要想检查日期格式是否能成功地导入,可使用CTOD()函数。如果 CTOD()函数接收此日期值,则日期数据就能正确地导入。

DELIMITED WITH Delimiter
字符字段由 Delimiter 标识,而非引号。
DELIMITED WITH BLANK
由空格符 (BLANK) 分隔字段,而不是用逗号分隔字段。
DELIMITED WITH TAB
各字段由制表符 (TAB) 来分隔,而非逗号。
DELIMITED WITH CHARACTER Delimiter
字段之间由给定的 Delimiter 分隔。如果 Delimite 是分号,应用引号括起来,因为引号在 Visual FoxPro 中有特殊的意义:一个命令分在多行中书写时,用分号作为行的结束。Delimiter 可以是 BLANK 或 TAB 。

WITH Delimiter 子句可与 WITH CHARACTER 子句同时使用。例如,在下面的例子中,添加记录的来源是一个文本文件。该文本文件中,字符字段用下划线 _ 标识,而字段之间用星号 * 分隔:

APPEND FROM mytxt.txt DELIMITED WITH _ ; WITH CHARACTER *
DIF
选用 DIF 可从 VisiCalc .dif(数据交换格式)文件中导入数据。矢量(列)对应当前选定表的字段,元组(行)对应表的记录。DIF 文件的默认扩展名为 .DIF。
FW2
选用 FW2 可从由 Framework II 创建的文件中导入数据。FW2 文件的默认扩展名为 .FW2。
MOD
选用 MOD 可从Microsoft Multiplan 4.01 版本的文件中导入数据。MOD 文件由 Microsoft Multiplan 4.01 版本创建,默认扩展名为 .MOD。
PDOX
选用 PDOX 可从 Paradox 3.5 版或 4.0 版数据库文件中导入数据。Paradox 文件名的默认扩展名为 .DB。
RPD
选用 RPD 可从由 RapidFile 1.2 版本创建的文件中导入数据。RapidFile 文件名的默认扩展名为 .RPD。
SDF
选用 SDF 可从系统数据格式文件中导入数据。SDF 文件是一种 ASCII 文本文件,记录有固定长度,并且以回车和换行符结尾,各字段不分隔开。文件的默认扩展名为 .TXT。
从 SDF 文件到 Visual FoxPro 表时的有效的日期转换要求数据保存为 YYYYMMDD 格式。

如果日期格式保存为不明确的格式, 你应该映射日期列到一个适当宽度的字符列这样你可以检查转换后的值来改正转换程序以创建正确格式的日期数据
十豆三 2005-11-24
  • 打赏
  • 举报
回复


USE 表名
APPEND FROM 文本文件.TXT DELIMITED WITH CHARACTER !


具体用那一个,要看你文本内容了。不防帖出一段看看
十豆三 2005-11-24
  • 打赏
  • 举报
回复
另外要注意,表结构要与文本对应
十豆三 2005-11-24
  • 打赏
  • 举报
回复
USE 表名
APPEND FROM 文本文件.TXT DELIMITED WITH '!'
qiaol_mail 2005-11-24
  • 打赏
  • 举报
回复
多谢十豆三,根据你的方案,问题已经解决了:)
wwwwb 2005-11-24
  • 打赏
  • 举报
回复
将文本文件的内容贴出来看看。

2,723

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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