对于每个人,对于第一个

For Each ,For First

For each 和 For First 的含义是什么.. 下面的示例

FOR EACH <db> NO-LOCK,
     FIRST <db> OF <db> NO-LOCK:

显示..

还有为什么我们每次 table 都需要使用 NO-LOCK。

FOR statement documentation(包括 EACH 和 FIRST 关键字)

NO-LOCK documentation

Google 是您的朋友,有关软件包的文档通常非常易于使用。 尽量不要问在 Whosebug 上简单搜索就能解决的问题。

让我们根据Progress demo DB举个例子来回答:

FOR EACH Customer WHERE Customer.Country = "USA" NO-LOCK,
    FIRST Salesrep WHERE Salesrep.salesrep = Customer.Saleserp:

/* your code block */

END.

FOR EACH 块是一个迭代块(循环),它集成了数据访问(以及其他一些功能,例如错误处理和帧范围界定,如果您想追溯到那么远的话)。

因此,"your code block" 中的代码会针对每个符合条件的客户记录执行,并且还会获取匹配的 Salesrep 记录。 Customer 和 Salesrep 之间的连接是内部连接。因此,您将只处理销售代表也存在的客户。