Это видео недоступно.
Сожалеем об этом.

Язык SQL. Условие срабатывания SQL триггера: уточняющее выражение WHEN в базах данных SQLite

Поделиться
HTML-код
  • Опубликовано: 16 дек 2016
  • Рубрика SQLite на сайте: zametkinapolyah...
    Текстовая версия: zametkinapolyah...
    Паблик блога в ВК: zametki...
    Тематическая группа в ВК: zametki_bd
    Помощь проекту:
    WMR: R288272666982
    WMZ: Z293550531456
    Яндекс.Деньги: 410011531129223
    -- Условия срабатывания триггера WHEN
    CREATE TRIGGER when_insert AFTER INSERT
    ON users WHEN (SELECT count(*) FROM user_log) (знак больше) 21
    BEGIN
    DELETE FROM user_log WHERE u_date = (SELECT min(u_date) FROM user_log);
    INSERT INTO user_log(id_u, u_date, operation) VALUES (NEW.id, datetime('now'), 'ins');
    END;
    -- Этот триггер делает очень простую вещь: он ограничивает количество записей в логе до двадцати одной. То есть в таблице user_log будет храниться информация не обо всех модификациях, а только о последних, понятно, что количество записей в таблице можно регулировать.
    -- Попробуйте реализовать данный триггер, чтобы посмотреть, как работает условие WHEN. В теле триггера выполняется две операции: первая удаляет лишнюю строку из лог-таблицы, вторая добавляет новую строку в таблицу лога.

Комментарии •