Mysql 递归表
我试图创建一个带有递归列的表,但它不起作用。后来我尝试了一下,它确实起了作用,但是我因为一个问题而放弃了桌子,现在我不知道我做了什么。 该表的名称为“security”,下面是脚本:Mysql 递归表,mysql,recursion,Mysql,Recursion,我试图创建一个带有递归列的表,但它不起作用。后来我尝试了一下,它确实起了作用,但是我因为一个问题而放弃了桌子,现在我不知道我做了什么。 该表的名称为“security”,下面是脚本: create table security ( id_emplo int(6) ZEROFILL NOT NULL, id_boss varchar(10) DEFAULT NULL, TIP int(5) NOT NULL, security_division varchar(40), PRIMARY KEY (
create table security (
id_emplo int(6) ZEROFILL NOT NULL,
id_boss varchar(10) DEFAULT NULL,
TIP int(5) NOT NULL,
security_division varchar(40),
PRIMARY KEY (id_emplo),
FOREIGN KEY (id_emplo) REFERENCES employees (id_emple) ON DELETE RESTRICT ON UPDATE CASCADE,
FOREIGN KEY (id_boss) REFERENCES security (id_emple) ON DELETE RESTRICT ON UPDATE CASCADE
) ENGINE=INNODB;
我还有一张桌子叫“雇员”。如果我试图创建仅包含“id_emplo”引用employess的表。。。它没有任何问题。您必须非常小心类型和声明。以下方面应起作用:
create table security (
id_emplo int(6) ZEROFILL NOT NULL,
id_boss int(6) ZEROFILL DEFAULT NULL,
TIP int(5) NOT NULL,
security_division varchar(40),
PRIMARY KEY (id_emplo),
FOREIGN KEY (id_emplo) REFERENCES employees (id_emple) ON DELETE RESTRICT ON UPDATE CASCADE,
FOREIGN KEY (id_boss) REFERENCES security (id_emplo) ON DELETE RESTRICT ON UPDATE CASCADE
);
是SQL的把戏
你有两个主要问题:
id\u emplo
而不是id\u emple
(尽管我给外键列的名称与它们在可能的情况下引用的列的名称相同)抱歉,这是一个错误,因为我在写它时更改了名称,但在中,我在mysql中写得很好。是的。。。就这样。因为类型的原因,它不起作用。我在mysql中写得很好,但是列的名称(id_emple)=(id_emplo)有一个错误,因为我在这里写它而不是粘贴它。非常感谢你。