Создать FoxPro Trigger - PullRequest
       6

Создать FoxPro Trigger

0 голосов
/ 18 октября 2010

Я хочу создать триггер в foxpro, который будет запускаться после каждого обновления в моей таблице базы данных, например, JobActivity. После каждого обновления триггер должен вставлять время обновления в таблицу JobActivity.

Ответы [ 3 ]

2 голосов
/ 18 октября 2010

Вместо ПОСЛЕ обновления вы можете применить проверку ПРАВИЛА записи (как упоминает @Stuart Dunkeld), которая применяется ко всей записи перед обработкой вставки / обновления.

Перейдите в контейнер базы данных и создайте хранимую процедуру, например,

FUNCTION SP_LastUpdated()
   replace LastEditDT WITH DATETIME()
   RETURN .t.
ENDFUNC

Затем, для правила проверки записи, вставьте SP_LastUpdated ().

0 голосов
/ 21 марта 2017

После каждого обновления триггер должен вставлять время обновления в таблицу JobActivity.

Мое первое предположение состоит в том, что это обновление таблицы данных выполняется в приложении VFP.

Если так, то отлично.Вам нужно только посмотреть, где выполняется это обновление, и добавить необходимый код, чтобы также обновить таблицу jobActivity с указанием даты / времени.

И если обновляемая таблица сама является таблицей jobActivity, то команду UPDATE или REPLACE, используемую для обновления других данных, необходимо изменить только для записи этого поля отслеживания обновлений - просто.Фактически, если вы хотите сделать это, вы можете легко добавить инициалы и т. Д. Лица, выполняющего обновление.

Если вы делаете это в приложении, использующем другой язык, вы все равно можете добавить код ввведите SQL UPDATE в таблицу jobActivity.

Удачи

0 голосов
/ 18 октября 2010

Тогда вы захотите использовать команду Создать триггер , за исключением того, что у вас есть одна проблема: триггер VFP не может обновить таблицу, которая его запускает (в противном случае он может закончиться бесконечным циклом)

У меня было решение для этого в проекте, который я делал много лет назад, я думаю, что для обновления использовалось правило проверки записей, я посмотрю его, когда вернусь домой и опубликую его.

...