MySQL的 - 外键约束失败

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

您好我知道这已经被问,但我还没有找到正确答案,为什么当我试图做我的第二插件:

INSERT INTO phone_numbers (phone_number) VALUES ('226');

我得到的错误:

ERROR 1452(23000):不能添加或更新子行,外键约束失败(week7.phone_numbers,约束phone_numbers_ibfk_1外键(user_id)参考usersid))

DDL下面的代码:

create table users (
  id int unsigned not null auto_increment,
  name varchar(100) not null,
  primary key(id)
);

INSERT INTO users (name) VALUES ('alex');


create table phone_numbers (
  id int unsigned not null auto_increment,
  user_id int unsigned not null,
  phone_number varchar(25) not null,
  primary key(id),
  foreign key (user_id) references users (id)

);

 INSERT INTO phone_numbers (phone_number) VALUES ('226');
mysql sql ddl
1个回答
1
投票

在您的用户id字段没有,这就是为什么它抛出的错误使用类似下面您的插入会工作默认值

INSERT INTO phone_numbers (user_id,phone_number) VALUES (1,'226');
© www.soinside.com 2019 - 2024. All rights reserved.