
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
09.08.2013, 16:01:58
|
|||
|---|---|---|---|
|
|||
TRIGGER, динамические NEW/OLD |
|||
|
#18+
Добрый день, пробую создать треггер собирающий лог изменений, который бы не зависил от изменений вносимых в отслеживаемую таблицу (добавление/удаление колонок, изменение их названий) заткнулся на проблеме, как динамически указывать название колонки для NEW/OLD (которая будет браться из SELECT COLUMN_NAME FROM information_schema.COLUMNS) погуглил ... но решения не нашел http://habrahabr.ru/qa/24082/ http://stackoverflow.com/questions/14703844/mysql-update-trigger-find-changed-columns http://forums.mysql.com/read.php?99,578153,578153#msg-578153 помогите плиз может кто уже решил данную проблему и возможно не нужно писать свой "велосипед"/триггер а есть что-то "родное" от MySQL заранее спасибо PS Динамический SQL как я понял нельзя использовать в тригере :( Хотя нашел статью что как-то можно через "временные таблицы" выкрутится, но к сожалению я новичек в MySQL и не смог понял как это реализовать http://codewordhank.com/sql-server/dynamic-sql-and-a-trigger-gotcha/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.08.2013, 16:52:11
|
|||
|---|---|---|---|
TRIGGER, динамические NEW/OLD |
|||
|
#18+
Динамический SQL вам тут и не поможет, насколько я понял задачу. Имхо, выход один - после каждого изменения структуры таблицы вызывайте скрипт, который пересоздаст логирующие триггера для этой таблицы. Правда, в MySQL логировать изменения триггерами - не слишком хороший вариант. Триггера не всегда срабатывают. Например, не срабатывают при truncate table и при действиях, вызываемых внешних ключами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&tablet=1&tid=1836280]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
49ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 320ms |

| 0 / 0 |
