Hibernate 删除所有行并从 1 开始索引

Hibernate delete all rows and start indexing from 1

我想每晚更新我的数据库以获得新值。简单地说 'start over' 删除所有行并存储新数据。

到目前为止,我正在使用这两个查询进行操作:

public void deleteProduct() {
        Transaction transaction = null;
        try (Session session = HibernateUtil.getSessionFactory().openSession()) {
            transaction = session.beginTransaction();
            session.createQuery("DELETE FROM Product").executeUpdate();
        } catch (Exception e) {
            if (transaction != null) {
                transaction.rollback();
            }
            e.printStackTrace();
        }
    }

public void saveProduct(Product student) {
        Transaction transaction = null;
        try (Session session = HibernateUtil.getSessionFactory().openSession()) {
            transaction = session.beginTransaction();
            // save the student object
            session.save(student);
            transaction.commit();
        } catch (Exception e) {
            if (transaction != null) {
                transaction.rollback();
            }
            e.printStackTrace();
        }
    }

对于每个元素。

我正在处理的问题是在删除和插入新值之后。 我记录的索引不是从零开始,而是从删除前最后一行的编号开始。

您可以删除 table,然后使用同样简单的 sql 语句重建它们。或者,您可以忽略您的键值,只要它是唯一的并且可以正常工作即可。把自己的专栏做成计数器,让钥匙成为钥匙。那里有几种选择。但如果您真的希望该键再次从 1 开始,我会重建 table。