Если вы можете использовать PL / SQL, попробуйте (РЕДАКТИРОВАТЬ: Включает предложение Нила xlnt начать со следующего более высокого значения):
SELECT 'CREATE SEQUENCE transaction_sequence MINVALUE 0 START WITH '||MAX(trans_seq_no)+1||' INCREMENT BY 1 CACHE 20'
INTO v_sql
FROM transaction_log;
EXECUTE IMMEDIATE v_sql;
Еще один момент, на который следует обратить внимание: установив для параметра CACHE значение 20, вы рискуете потерять до 19 значений в последовательности, если база данных выйдет из строя. Значения CACHEd теряются при перезапуске базы данных. Если вы не выполняете последовательность очень часто или вас не волнуют пропуски, я установил бы ее на 1.
Один последний нит: значения, которые вы указали для CACHE и INCREMENT BY, являются значениями по умолчанию. Вы можете оставить их и получить тот же результат.