У sequence нельзя сбросить START WITH. Зато можно удалить sequence совсем и создать заново.
Но при удалении отваливаются триггеры, которые использовали этот sequence.
Поэтому после создания sequence надо не забыть перекомпилировать триггер.
Вот такая загогулина, панимаишь..
Но при удалении отваливаются триггеры, которые использовали этот sequence.
Поэтому после создания sequence надо не забыть перекомпилировать триггер.
Вот такая загогулина, панимаишь..
Tags:
no subject
no subject
no subject
no subject
no subject
есть утилки, например pl/sql developer позволяет одним кликом мыши сделать recompile referencing objects.
вот обидно было когда (в 8.0 по крайней мере) при create or replace view убивались все instead of триггеры на эту view, и упоминания о такой фиче я в доках не нашел...
no subject
BEGIN
IF :new.id IS NULL OR :new.id = 0 THEN
SELECT SEQUENCE_NAME.nextval INTO foo FROM dual;
:new.id := foo;
END IF;
END;
тогда сиквенс будет генерироваться только в том случае, когда значение первичного ключа
отсутствует либо равно 0.
В Infomix-е для автоинкрементируемых полей такое поведение было по-умолчанию.
no subject
Только это все равно не спасает от проблемы со сбросом счетчика в начальное состояние. Хотя оно, на самом деле, особо и не нужно..
no subject
no subject