За последние 24 часа нас посетили 18693 программиста и 1603 робота. Сейчас ищут 916 программистов ...

Триггеры!

Тема в разделе "PHP и базы данных", создана пользователем rodion4657, 23 янв 2013.

  1. rodion4657

    rodion4657 Активный пользователь

    С нами с:
    24 янв 2012
    Сообщения:
    135
    Симпатии:
    0
    Здравствуйте, добрые люди!хочу сделать простенький журнал аудита, использую триггер
    Код (Text):
    1. CREATE TRIGGER `my_trigger` BEFORE INSERT ON `table1`
    2. FOR EACH ROW
    3.   INSERT INTO `mylog` SET `user`= USER(), `query`='insert';
    Можно ли сделать, чтобы в качестве
    Код (Text):
    1. query
    показывался сам запрос а не слово
    Код (Text):
    1. 'insert'
    Поделитесь соображениями, очень нужно...
     
  2. runcore

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    может так
    Код (PHP):
    1. CREATE TRIGGER log_queries_insert BEFORE INSERT ON `your_table`
    2. FOR EACH ROW
    3. BEGIN
    4.     DECLARE original_query VARCHAR(1024);
    5.     SET original_query = (SELECT info FROM INFORMATION_SCHEMA.PROCESSLIST WHERE id = CONNECTION_ID());
    6.     INSERT INTO `app_sql_debug_log`(`query`) VALUES (original_query);
     
  3. rodion4657

    rodion4657 Активный пользователь

    С нами с:
    24 янв 2012
    Сообщения:
    135
    Симпатии:
    0
    спасибо за вариант, но не получается((