我有一个Spring新的Web应用程序(Java),在用户登录(使用用户名和密码)后,我希望使该用户能够添加一个新用户,直到一切都很好为止。每个用户都有一个自动递增(AI)的主键iduser和一个外键idprofile。表Profile包含有关用户的信息,其idprofile是主键(必须与User表中的ipdrofile相同)。

如您所知,MySQL不允许您在每个表中创建多个AI(以MySQL 5工作台为平台),当我的代码添加为用户时,它必须同时添加配置文件,但必须具有三个字段未知,分别是iduser,idprofile(用户表)和idprofile(配置文件表)。由于ipdrofile不能是AI,保存用户和配置文件(添加)时如何管理正确的密钥?

java - SQL:使用未知键联接表,该键应自动递增-LMLPHP

最佳答案

首先插入profile,返回新的配置文件ID,然后使用返回的配置文件ID插入user,如果需要,可以选择返回新的用户ID。

您将需要使用以下两种方法来获取返回的自动生成的密钥:


Connection.prepareStatement(String, String[])
Statement.getGeneratedKeys()

07-25 20:17