Редактировал(а) Alexandr Fokin 2023/12/16 14:12

  • Alexandr Fokin
    Alexandr Fokin, 2020/06/06 13:33

    Рассмотреть вариант использования:

    Задача: хранить в таблице не более N строк. При достижении значения N при вставке вытеснять самую старую строку из имеющихся.

    Вариант 1:
    Если так подумать над этой задачей
    При небольшом значении N (кол-ва строк)
    Возможно имеет смысл:
    1) Зарезервировать заранее: создать N строк в базе (условно пустых)
    2) Генерировать номер из зацикленного Sequence
    3) Делать Update вместо Insert

    Вариант 2
    Триггер, переопределяющий логику вставки.
    Выполняющий Insert, if (Count > N) Remove
    или нечто схожее

    Вариант 3
    Объединение 2 и 1 вариантов:
    триггер, переопределяющий insert, но действующий по варианту 1