Php mysql与2字段的自我关系

Php mysql与2字段的自我关系,php,mysql,relationship,Php,Mysql,Relationship,我有user这样的表: id email ------------------------- 1 test@gmail.com 和菜单这样的表格: id parent_id user_id name ----------------------------------- 1 NULL 1 tets 我想建立自己的关系parent\u id和user\u id 如果黑客想添加此记录,mysql会忽略此

我有
user
这样的表:

  id          email
-------------------------
  1       test@gmail.com
菜单
这样的表格:

  id   parent_id   user_id   name
-----------------------------------
  1       NULL        1      tets
我想建立自己的关系
parent\u id
user\u id

如果黑客想添加此记录,mysql会忽略此操作,因为
user\u id
2不是所有者父菜单1

  id   parent_id   user_id   name
-----------------------------------
  2       1           2      tets

1.使用下面的查询创建表用户

create table User(id int primary key,email varchar(30));
create table Menu(id,int,u_id int,p_id int,name varchar(10),primary key(u_id,p_id),
    constraint user_fk foreign key(id) references User(id) 
      on delete cascade);
2.使用以下查询创建表菜单

create table User(id int primary key,email varchar(30));
create table Menu(id,int,u_id int,p_id int,name varchar(10),primary key(u_id,p_id),
    constraint user_fk foreign key(id) references User(id) 
      on delete cascade);
当您输入一个表用户中不存在的值时,将抛出下面的错误

Cannot add or update a child row: a foreign key constraint fails

如果有人用用户表中不存在的用户id向菜单添加记录,则不应添加该记录。“我的要求正确吗……”安德鲁斯班托尼:“是的
user\u id
字段与
user
表和
parent\u id
自身与
id
的关系。我有一个问题是与
user\u id
user\u id
的自我关系。你能给我一些示例记录吗。。。?并给我错误详细信息使用问题示例记录。我已经更改了第二个查询,现在它应该可以工作了…@yonessafariI需要3个关系
menu.user\u id
to
user.id
menu.parent\u id
to
menu.id
menu.user\u id
to
menu.user\u id
您要对这些表做什么,,