MySQL+ выполнение внешних команд при определенных событиях, возможно?

Если вкратце есть комерческий пхп-скрипт в код которого вмешатся нельзя(zend), но нужно добавить небольшой функционал. Вот возникла идея написать скрипт( на питоне например) добавляющий нужный функционал и запускать его когда основной скрипт вносит данные в БД. Потому и возник вопрос возможно ли в mysql повесить выполнение команды на insert/update в определенную таблицу, в идеале с передачей некоторых значений из добавленных данных в качестве параметров скрипту?

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

Ну и доп вопрос — сколько примерно такая доработка может стоить?
  • Вопрос задан
  • 2476 просмотров
Решения вопроса 1
pietrovich
@pietrovich
как говорили выше, можно обвесить интересующие вас таблицы триггерами, собирать с их помощью необходимые для скриптов данные и заполнять ими отдельную таблицу, эдакий «планировщик» для внешнего скрипта, который по крону будет забирать задания и формировать необходимые отчеты. если решение с «планировщиком» и кроном не подходит и требуется «риалтайм» копайте в сторону «external stored procedure» на сях они пишутся начиная с 3-й, емнип, версии, а для более свежих можете попробовать подходящий плагин отсюда External Language Stored Procedures, с их помощью можно писать на языках отличных от C (Java, Perl и кое-что другое), правда работает оно загадочно и если есть возможность, то лучше писать по старинке на сях без всяких дополнительных плагинов.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Есть «триггеры», возможно это вам подойдет. Погуглите «триггеры MySQL», информации по этой теме много даже на русском.
Ответ написан
Комментировать
@Disturbed
Если за коммерческий скрипт уплачено — то свяжитесь с их саппортом, они обязаны Вам помочь. Если не уплачено — дезендер :)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы