Добавить последнюю обновленную метку времени в таблицу FoxPro - PullRequest
2 голосов
/ 07 июня 2011

Я синхронизирую данные между FoxPro и удаленным SQL Server. Все работает отлично, но на стороне FoxPro было бы намного быстрее, если бы я мог обнаружить записи, которые не нужно рассматривать для синхронизации. Я вычисляю значения хеш-значений для сравнения с последним известным хеш-кодом, поэтому с загруженными записями это достаточно просто. Я хотел бы отфильтровать записи перед их загрузкой, сверяя столбец updated со временем начала последней синхронизации.

Как добавить столбец updated в таблицу VFP 9, которая заполняется текущей датой и временем при каждом изменении строки?

1 Ответ

5 голосов
/ 08 июня 2011

Предполагая, что таблица находится в базе данных VFP (то есть не является свободной таблицей), добавьте столбец datetime в таблицу и настройте правило таблицы для заполнения поля.Предполагая, что у вас есть VFP, вы можете сделать это в конструкторе таблиц или с помощью кода.

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

Как указывает синтаксис, вам нужно определить функцию (или хранимую процедуру в базе данных VFP), которая будет фактически выполняться при срабатывании правила.Вы хотите, чтобы это вернуло истину.Код в функции может быть простым:

REPLACE tUpdated WITH DATETIME()
RETURN .T.

Тамар

...