3

我遇到了一个奇怪的情况,休眠删除适用于所有记录,但不适用于 id= 1。起初,我getCurrentSession用于检索活动的休眠会话,但将其更改为手动打开/关闭新会话以进行删除,因为它不起作用。但现在它仍然不起作用。尽管如此,我正在使用交易。

@Override
public void delete(Song song) {
    session = sessionFactory.openSession();
    try {
      Transaction tx = session.beginTransaction();
      session.delete(song);
      tx.commit();
    } catch (HibernateException e) {
      System.out.println("notify!");
    }
    session.close();
}

我有5个测试记录。我可以删除 id={2,3,4,5},但我不能删除 id=1。有任何想法吗?

编辑:是我的 Song 实体的代码。

4

1 回答 1

1

我注意到的一件事是您将 id1默认设置为。即使我不知道这是否真的是你问题的根源(但肯定闻起来像它)。

于 2013-03-06T20:45:43.157 回答