У меня есть 2 таблицы, ЗАПРОС И ЭЛЕМЕНТ с отношением «один ко многим», так что у запроса есть много Элементов.Как сопоставить коллекции Hibernate с принудительным ограничением столбцов Oracle NULL?
Я хотел бы применить ограничение NOT NULL Oracle для столбца внешнего ключа ELEMENT.ENQUIRY_ID, поскольку это наилучшая практика. У меня есть следующий набор на объекте Запрос:
@OneToMany(cascade = CascadeType.ALL)
@JoinColumn(name = "ENQUIRY_ID", referencedColumnName = "ID")
private Set<Element> elements = new HashSet<Element>();
Когда я принудить NOT NULL ограничение я получаю следующую трассировку стека:
вызвано следующими причинами: java.sql.BatchUpdateException: ORA-01400: не может вставить NULL в («ЭЛЕМЕНТ». «ENQUIRY_ID»)
Так Hibernate, очевидно, сохраняющаяся коллекцию элементов до родительского запроса, а затем идет назад и делает обновленную информацию о ключевом поле иностранного впоследствии.
Есть ли способ принудительного ограничения NOT NULL в поле ввода внешнего ключа?
Спасибо axtavt, что сработало, легко, когда вы знаете как! Я нигде не могу найти запись - хотя может и не быть правильно, но в блогах о сценарии, вашем решении и о том, как Hibernate интерпретирует аннотации на http://www.andrew-eells.com/2011/01/09/ждущий режим, внешний ключ-коллекция-базы данных лучшая практика / –