我刚开始在学校使用 FoxPro,当我尝试创建一个需要向多个表添加数据的表单时遇到了一些问题(没有设计器)。
我正在使用 APPEND 命令,但这似乎只将数据添加到主表中。
非常感谢任何有关解决方案的建议。
谢谢
在进行追加之前,您需要明确选择工作区(别名或表)。例如,在您的“CLICK”事件中,您会执行类似...
SELECT FirstTableName
append blank
replace FieldW with "something",;
FieldX with 1.23,;
FieldY with SomeVariable,;
FieldZ with Thisform.SomeTextbox.Value
SELECT SecondTableOrAlias
append blank
replace FieldA with Thisform.AnotherTextbox.Value,;
FieldB with Thisform.SomeCheckBox.Value
SELECT ThirdTableOrAlias
append blank
replace ...
如果尚未从表单的 DataEnvironment 打开表,您可能希望通过在上述追加/替换之前执行以下操作来确保它们首先打开
if not used( "FirstTableName" )
select 0
use FirstTableName
ENDIF
if not used( "SecondTableOrAlias")
select 0
use SecondTableOrAlias
endif
ETC...
此外,VFP 也支持 SQL,所以你可以这样做
insert into FirstTableName ;
( FieldW,;
FieldX,;
FieldY,;
FieldZ ;
);
values ;
( "something",;
1.23,;
SomeVariable,;
Thisform.SomeTextbox.Value ;
)
并通过 SQL-Select 查询数据
select * from FirstTableName ;
where FieldW = "something" ;
into cursor C_SomeTempResultSet READWRITE