0

我支持用 Visual FoxPro 9 编写的遗留应用程序,我需要一些指导来了解如何修改空闲表的索引列中的值。

表定义如下: 表定义

如果“nversion”列包含特定值(例如“22.30”),我想将“lrecordno”列的值增加 1,000。

完成此操作的正确步骤顺序是什么?谢谢你。

4

2 回答 2

3

如果您使用 SQL 在 Visual FoxPro 中工作:

USE tableName SHARED
UPDATE tableName SET lrecordno = lrecordno + 1000 WHERE nversion = 22.30
USE

或者使用 FoxProREPLACE命令:

USE tableName SHARED
REPLACE lrecordno WITH lrecordno + 1000 FOR nversion = 22.30
USE

WHERE这些将影响与orFOR子句匹配的所有记录。

于 2012-05-22T15:41:11.287 回答
2

您没有显示足够的信息来表明您想要做的事情是否安全。如果 iRecordNo 是表的主键或候选键,则以编程方式修改其值可能会导致错误。

那么,该字段有什么样的索引呢?如果它是主要的或候选的,它首先如何获得它的值?从您显示的图中,它不是 AutoIncrementing。

添马舰

于 2012-05-22T20:35:17.897 回答