SSH框架对MySQL进行级联删除(只要你安装了navicat是最简单的)

相信搜索SSH框架的级联删除的,最初想法是怎么用代码实现级联吧,现在有个更简单的方法,只要你安装了Navicat(其他类似软件可能也行,不过我没试过)

首先说一下数据库表之间的关系,用过powerdesiger的应该知道这个是什么意思

不懂也没关系,一个是驾照认证信息表,一个是用户信息表,用户信息表的主键UserID是驾照认证信息表的外键。

我要实现的是删除用户的同时,删除驾照认证信息表中对应的用户的驾照信息

HQL语言

public void personDaoDelete(int id) {
		String hql="delete Personinfo n where n.id=:id";
		Query query = sessionFactory.getCurrentSession().createQuery(hql);
		query.setInteger("id",id);
		query.executeUpdate();
		
	}

你没看错,代码中HQL语言就这样写

剩下的都在Navicat中操作,我这里是已经建好表了,只需要关心zl_user表和zl_license表,这两个表就是对应powerdesigner中的用户信息表和驾照认证信息表

点击zl_license右键->设计表->外键

点击删除是下面的RESTRICT,改成CASCADE(意思是对应主表对应主键被删除后,此从表中含有主表外键的数据行都会被删除)

就可以了,注意看一下“参考表”是不是对应的zl_user

猜你喜欢

转载自blog.csdn.net/fbvukn/article/details/85425167
今日推荐