注册 登录
编程论坛 VFP论坛

VFP 里面如何将数组内的信息替换表内现有信息

山高林静 发布于 2014-05-11 11:11, 543 次点击
&&select 表                 会报错zap需要独占打开
use 表                      &&报文件正在使用
ZAP
insert into 表 from array 数组


怎样才能将数组内的信息替换表内数据
9 回复
#2
TonyDeng2014-05-11 11:24
文不對題,你是無法ZAP,不是無法添加數據。為什麽不問不能ZAP?
#3
liuxingang282014-05-11 11:30
要正确执行楼主的代码,需要注意 2 点;

1. 若要执行 zap ,则表需要独占打开,最好在打开表之前,关闭所有表
   close tables all
   use 表 excl
   zap
2. 数组各元素的类型与表字段的类型必须匹配,可采用以下命令之一
   insert into 表 from array 数组
   append from array 数组
#4
sdta2014-05-11 11:41
类似问题是永远回答不完的
#5
wangzhiyi2014-05-12 15:21
数组数据传送到表中还有一个问题需要注意,你的数据相应的列数据类型是不是与表格的想一致,所以最好是使用循环加分支结构进行数据类型判断再传送。
for i=1 to alen(aa,1)  &&aa是存放你数据的数组
    appe blank
    repl field1 with iif(type('aa(i,1)'='N',aa(i,1),val(aa(i,1))  &&假设你的第一个是数值型
    ....
endfor
其他数据类型可以参照修改。但愿能对楼主有所帮助。
   
#6
tlliqi2014-05-12 17:21
程序代码:
clos tabl
use 表                      &&报文件正在使用
ZAP
appe from array 数组
#7
山高林静2014-05-12 21:31
回复 楼主 山高林静


[ 本帖最后由 山高林静 于 2014-5-12 21:44 编辑 ]
#8
山高林静2014-05-12 21:41
回复 5 楼 wangzhiyi
主要问题是无法清空原有数据放入,不过依然感谢!
#9
山高林静2014-05-12 21:43
回复 3 楼 liuxingang28
谢谢,受教了,方法1关闭所有表方法可行,多谢了。
#10
hsfisher昨天 09:49
学习了
1