我有一个Spring新的Web应用程序(Java),在用户登录(使用用户名和密码)后,我希望使该用户能够添加一个新用户,直到一切都很好为止。每个用户都有一个自动递增(AI)的主键iduser和一个外键idprofile。表Profile包含有关用户的信息,其idprofile是主键(必须与User表中的ipdrofile相同)。
如您所知,MySQL不允许您在每个表中创建多个AI(以MySQL 5工作台为平台),当我的代码添加为用户时,它必须同时添加配置文件,但必须具有三个字段未知,分别是iduser,idprofile(用户表)和idprofile(配置文件表)。由于ipdrofile不能是AI,保存用户和配置文件(添加)时如何管理正确的密钥?
最佳答案
首先插入profile
,返回新的配置文件ID,然后使用返回的配置文件ID插入user
,如果需要,可以选择返回新的用户ID。
您将需要使用以下两种方法来获取返回的自动生成的密钥:
Connection.prepareStatement(String, String[])
Statement.getGeneratedKeys()