2011-06-07 128 views
2

我正在同步FoxPro和远程SQL Server之间的数据。一切都很好,但在FoxPro方面,如果我可以检测到不需要考虑同步的记录,速度会更快。我计算散列值与最后一次已知的散列进行比较,因此加载的记录很容易。我想要通过检查updated列与上次同步的开始时间之间的差别来加载它们之前过滤掉记录。将最新更新的时间戳添加到FoxPro表中

如何将updated列添加到VFP 9表格中,每当对行进行更改时,VFP 9表格都会使用当前日期和时间填充?

回答

5

假设表格位于VFP数据库(即不是空闲表格)中,向该表格添加datetime列并设置表格规则以填充该字段。假设您有VFP可用,您可以在表设计器或代码中执行此操作。

ALTER TABLE YourTable ADD tUpdated T 
ALTER TABLE YourTable SET CHECK YourFunction() 

由于语法表示,您需要定义一个函数(或者在VFP数据库中的存储过程)实际上当触发规则运行。你想让它返回true。在函数的代码可以是简单的:

REPLACE tUpdated WITH DATETIME() 
RETURN .T. 

添马舰

+1

感谢。我不能以编程方式添加存储过程(这段代码在运行时从分布式.exe执行,而'APPEND PROCEDURES'仅在IDE中有效),所以我使用了'SET CHECK EXECSCRIPT(“REPLACE tUpdated WITH DATETIME ()“)'。 – 2011-06-07 22:14:48