回 帖 发 新 帖 刷新版面

主题:求助.添加字段到第n列,代码应如何编写?

添加字段到第n列,代码应如何编写?
(例如添加字段到第二列.)

回复列表 (共2个回复)

沙发

好象不能简单地实现,有一个思路,估计可以:
1、用COPY STRUCTURE EXTENDED TO FileName命令得到结构信息表;
2、打开结构信息表,移动当前记录为n,用insert before命令插入新字段的描述信息;
3、利用结构信息表,  CREATE FROM 命令可以生成新表的结构;
4、导入原表数据并用copy to命令覆盖原表

其中第2点是关键,只有这样才能保证新字段的位置。

类似的办法:一一列举字段,用select 字段列表 from 原表 into dbf 临时表,只要把新加字段放在列表中恰当位置也可实现,但是也要用类似COPY STRUCTURE EXTENDED TO FileName命令得到原来的字段名

板凳

代码来了,已经测试通过

SET SAFETY OFF 
CLOSE ALL 
SELECT 0
USE khk &&原表
COPY STRUCTURE EXTENDED TO t_stru
USE t_stru 
GOTO 3 &&新字段在第3列
INSERT blank before
REPLACE field_name WITH 'CJ' &&此行和以下依次为字段名,类型,长度,小数等
REPLACE field_type WITH 'N'
REPLACE field_len WITH  5
REPLACE field_dec WITH 1
CREATE temp FROM t_stru
APPEND FROM khk
COPY TO khk
SET SAFETY ON

我来回复

您尚未登录,请登录后再回复。点此登录或注册