** 测试1
** 先定义数组
DIMENSION dd[10,10]
dd[1,1]=1
?dd[1,1] && 输出 1,正常
?dd[1,2] && 输出 .f.,正常
CREATE CURSOR tmp1( c1 C(10),c2 C(10))
SELECT COUNT(*) FROM tmp1 WHERE 1=2 INTO ARRAY dd
** 测试结果
?dd
&& 输出 0,正常
?dd[1,1] && 输出 0,正常
?dd[1]
&& 输出 0,正常
?dd[1,2] && 报错误,下标超界
** 根据上面测试,可以知道
1.不需要先定义数组,就算定义了,也会重新生成数组,同时,数组维数也变化。
2.运行 SELECT COUNT(*) FROM tmp WHERE 1=2 INTO ARRAY dd 语句后,数组值是0,dd=dd[1]=dd[1,1]
** 测试2
CREATE CURSOR tmp2( d1 C(10),d2 C(10))
INSERT blank
REPLACE d1 WITH dd && 提示数据类型不匹配
** 测试3
CREATE CURSOR tmp3( d3 N(10),d4 N(10))
INSERT blank
REPLACE d3 WITH dd && 正常
?d3 &&输出0,正常
dd = null
REPLACE d4 WITH dd && 会提示,d4不能为null值
楼主的问题,和上面测试不符合,VFP9.0 SP1
repl 字段 with dd
出现:提示找不到变量