Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql SQL中与外键的关系?_Mysql_Sql_Database_Schema - Fatal编程技术网

Mysql SQL中与外键的关系?

Mysql SQL中与外键的关系?,mysql,sql,database,schema,Mysql,Sql,Database,Schema,我正在将模式中的递归关系转换为sql,并尝试将一个表中的两列引用到另一个表中的一列 模式如下所示: Table: Request ( mem_id1, mem id2, approved ) 所需外键: request.mem_id1 will reference member.mem_id request.mem_id2 will reference member.mem_id CREATE TABLE request ( mem_id1 INTEGER, me

我正在将模式中的递归关系转换为sql,并尝试将一个表中的两列引用到另一个表中的一列 模式如下所示:

Table: Request
(
   mem_id1,
   mem id2,
   approved
)  
所需外键:

request.mem_id1 will reference member.mem_id  
request.mem_id2 will reference member.mem_id 
CREATE TABLE request (
mem_id1 INTEGER,
mem_id2 INTEGER,
approved BIT(1),
PRIMARY KEY (mem_id1, mem_id2),
FOREIGN KEY (mem_id1) REFERENCES members (mem_id),
FOREIGN KEY (mem_id2) REFERENCES members (mem_id)
)
我尝试了以下方法:

CREATE TABLE members (
mem_id INTEGER,
f_name VARCHAR(10),
l_name VARCHAR(10),
address VARCHAR(40),
name VARCHAR(20),
domain VARCHAR(15),
PRIMARY KEY(mem_id)
)

CREATE TABLE member_phone (
mem_id INTEGER,
phone_no INTEGER,
PRIMARY KEY (mem_id,phone_no),
FOREIGN KEY (mem_id) REFERENCES members (mem_id)
)

CREATE TABLE request (
mem_id1 INTEGER,
mem_id2 INTEGER,
approved BIT(1),
PRIMARY KEY (mem_id1,mem_id2),
FOREIGN KEY (mem_id1,mem_id2) REFERENCES members (mem_id)
)

我相信您需要两个单独的外键:

request.mem_id1 will reference member.mem_id  
request.mem_id2 will reference member.mem_id 
CREATE TABLE request (
mem_id1 INTEGER,
mem_id2 INTEGER,
approved BIT(1),
PRIMARY KEY (mem_id1, mem_id2),
FOREIGN KEY (mem_id1) REFERENCES members (mem_id),
FOREIGN KEY (mem_id2) REFERENCES members (mem_id)
)

好啊问题是什么?我看不到任何与递归有关的东西。哦,我以前试过,但我没想到我忘记了“,”,很抱歉问了一些愚蠢的问题。tho,我会记下你的答案。谢谢你,你不必因为问问题而感到愚蠢,这就是这个网站的用途。我很高兴能帮上忙。