Коллеги!
У меня есть модель с двумя последовательностями (по некоторым причинам ...).Одним из них является первичный ключ.Таблица Eclass: Id (последовательность int (таблица последовательности e_class_seq), ключ UNIQUE, а не PK);Serial (int sequence (таблица последовательности e_class_sequence), PK);... Класс модели:
class Eclass< ActiveRecord::Base
set_table_name 'e_class'
set_primary_key 'serial'
set_sequence_name 'e_class_sequence'
Итак, пока я пытаюсь вставить новую запись в таблицу Eclass в цикле, например:
some_array.each begin
eclass = Eclass.new()
...
eclass.save!
end
первая записьвсе в порядке, но на второй записи я получаю
OCIError: ORA-00001: уникальное ограничение (LNX.ECLASS_ID_UNIQUE) нарушено
Что не так?Я не генерирую их сам, это вопрос ActiveRecord.Также я попытался сгенерировать идентификаторы вручную с помощью nextval.Та же ошибка (также в тестовых базах данных эта ошибка не появляется, может быть, потому что последовательности там меньше ...
Что я могу сделать? Спасибо!