2012-01-31 3 views
1

나는 그것을 작동시킬 수 없습니다. 예 : http://dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key-constraints.html삭제 캐스케이드에 MySQL이 작동하지 않습니다 ... 맥 OS X 라이온과 속편 프로를 사용하고 있습니다

CREATE TABLE parent (id INT NOT NULL, 
        PRIMARY KEY (id) 
) ENGINE=INNODB; 

CREATE TABLE child (id INT, parent_id INT, 
        INDEX par_ind (parent_id), 
        FOREIGN KEY (parent_id) REFERENCES parent(id) 
        ON DELETE CASCADE 
) ENGINE=INNODB; 

내가 뭘 잘못하고 있니?

+2

에 대한 구성 점검 당신은 무엇을 의미합니까 경우이어야 자식 테이블을 생성? CREATE가 실패하거나 부모 행에 대한 DELETE가이를 참조하는 하위 행을 삭제하지 못합니까? –

+0

어떻게 실패합니까? –

+0

삭제가 실패합니다. 부모가 수행 할 때 삭제하려고합니다. – alvizouri

답변

1

참조 제약 조건

CONSTRAINT FOREIGN KEY (parent_id) REFERENCES parent(id) ON DELETE CASCADE 

즉, 확인하려면 다음 쿼리를 사용하여 실패하면 참조

SHOW VARIABLES LIKE 'foreign_key_checks'