mybatis多表关联新增数据

mybatis多表关联新增数据,有5张表有关联关系,现在要新增住户信息,但是新增的时候要考虑到关联的关系。请问一下如何写SQL语句

阅读 12.5k
4 个回答

SQL应该尽量减少业务逻辑,对一些业务逻辑的校验可以放在业务层去做,SQL就简单的Insert就可以了

对于多张表 我和上面的人的想法一样 在一条插入语句执行后返回其主键 在次插入到含有外键的另一张表中例如

clipboard.png
然后在你的业务逻辑中获取到返回的主键 插入到另外一张表中即可 这样避免了复杂的sql

在业务层慢慢写多条 insert 语句, 开启返回主键有关联也不麻烦的, 反正现在都是生成的 mapper .

不用考虑数据完整性,控制好事务没啥好怕的.

问题我已经解决了,mysql里不用<selectKey>这个标签,只需加上useGeneratedKeys="true" keyProperty="id"这两个属性就好了,插入数据后自动返回主键值到对象中。然后把主键值存入关联表中就可以了,这样就建立了关联关系了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题