外键问题 - mysql

时间:2011-04-22 02:10:30

标签: mysql sql database foreign-keys foreign-key-relationship

我有这个mysql代码,但是当我删除agrupamento的一个元素时,孩子不会在emprego中被删除,并且它被认为是。

例如我在agrupamento - id - 1 || area - science

我在profissao(工作)- ref - 1 || empregoid - 1 || emprego - scientist

 CREATE TABLE agrupamento (  
        id smallint(5) unsigned NOT NULL auto_increment,  
        area varchar(30),  
        PRIMARY KEY (id) 
    )

CREATE TABLE emprego (  
    ref int(10) unsigned NOT NULL auto_increment,  
    empregoid smallint(5) unsigned NOT NULL,  
    emprego varchar(50),  
    PRIMARY KEY (ref)  
)

    ALTER TABLE emprego  
    ADD CONSTRAINT FK_emprego
    FOREIGN KEY (empregoid) REFERENCES agrupamento(id)  
    ON UPDATE CASCADE  
    ON DELETE CASCADE;  

问题是什么?

(如果区域科学不存在,科学家也不会。)

谢谢!

1 个答案:

答案 0 :(得分:2)

您在数据库中使用的表的类型是什么,证明该表是innoDB以使用FK。在myIsam表中,它将无法正常工作。