如何在春季编写查询以将记录插入到Mysql数据库的2个表中

问题描述 投票:0回答:2

我想编写一个查询以将数据插入到两个表中。

我正在将数据插入称为Usercompany的两个表中。User具有外键company _id。表结构给定打击

用户表

  • int user_id;
  • int company_id; (外键)
  • 字符串用户名;
  • String user_email;

公司表

  • int company_id;
  • String company_name;

-

void insert(String user){
    String query="insert into user(user_name,user_email,company_id,company_name) values
    (variable,variable, variable, variable)";
    //code to map using put method
}

我遇到错误

company_id cannot be null.
java mysql jdbc
2个回答
0
投票

由于外键company_id不能为null,因此公司必须存在于数据库中,并且在插入用户之前必须知道其ID。


0
投票

这可能是因为company_id表中的not null被设置为user。如果希望外键可以为空,则必须从not null表的表创建语句中的company_id列中删除user。否则,您必须提供外键的值。

© www.soinside.com 2019 - 2024. All rights reserved.