Вы сказали
У меня около 100 таблиц , таких как Пользователь и Город, сопоставленные с этим значением
ки. Hibernate с книгой JPA говорит
Возможно, вы удалили все другие ссылки вручную
Это означает, что вы должны запрашивать вручную любую связанную таблицу. Но он говорит, что если другие сущности ссылаются на Type, ограничения базы данных предотвращают любую несогласованность, и вы видите исключение ограничения внешнего ключа . Я думаю, что это лучший способ проверить, что вы хотите. В противном случае вам следует вручную запросить любую связанную таблицу.
try {
userType = (Type) session.load(Type.class, id);
session.delete(userType);
/**
* or JDBCException
* e.getCause()
* e.getErrorCode() - vendor-specific
*/
} catch (HibernateException e) {
// checkout Exception right here e.getCause();
}
Все исключения, выданные Hibernate , являются фатальными . Это означает, что необходимо откатить транзакцию базы данных и закрыть текущий сеанс. Так что вы можете захотеть открыть новый сеанс.