hibernate里的delete操作

发现一个奇怪的现象:使用下面的方法进行删除一个表里全部数据的操作
 public void deleteAll() {
  Query q = session.createQuery("delete from " + clazz.getName());
  q.executeUpdate();
 }
   删除Type;即使设置了cascade=“all” cascade=“all-delete-orphan”、lazy=“false”、join=“cascade”、inverse=“true”
   都是不行的。
   最后的解决方案,是修改数据库中的外键,将其的on-delete字段设置为cascade。

   但是同样的设置对于:

     public void delete(T obj) {
  session.delete(obj);
 }
   就很管用,二者看来是不同的

你可能感兴趣的:(Hibernate)