在 VFP 中更新 table

updating a table in VFP

我的数据库中有两个表。我试图通过将 table2 中的列设置为等于 table1 中的列之一来更新它。我已经看过这个答案 visual foxpro - need to update table from another table 并尝试在我的代码上执行此操作,但是,我在 UPDATE table2 上一直有语法错误。为什么? 这是我的。

ALTER TABLE table2;
ADD COLUMN base2 B(8,2);
UPDATE table2
WHERE table2.itemid=table1.itemid from table1;
SET table2.base2=table1.base;

使用加入

          Update table2 b 
         Join table1 a on b. Itemid=a.itemid
          Set b. Base2=a.base

使用 'standard' VFP 语言语法和相关表,您可以很容易地执行以下操作:

USE Table1 IN 0 EXCLUSIVE
SELECT Table1
INDEX ON ID TAG ID  && Create Index on ID field
USE Table2 IN 0
SELECT Table2
SET RELATION TO ID INTO Table1
REPLACE ALL Table2.ID WITH Table1.ID FOR !EMPTY(Table2.ID)  

您可能想花一些时间观看免费的在线教程视频,网址为:Learn Visual Foxpro @ garfieldhudson.com
视频名为:
* 构建一个简单的应用程序 - Pt。 5

* 问答:在报表中使用相关表
两者都讨论了使用 VFP 的语言来处理相关表

祝你好运

最简单的语法是:

update table2 from table1 where table2.itemid = table1.itemid ;
set table2.base2 = table1.base

您还可以添加更多字段以更新,以逗号分隔,即

... set table2.base2 = table1.base, table2.this = table1.that