2013-10-15 3 views
0

내가 가지고와 DB에서 레코드를 삭제 하나의 테이블 : 탐색 (이노) enter image description here가능한 어린이 DB에서

하는 것이 가능 구성이 테이블을인가 : 내가 어디 아이디 == 1, 모두 삭제하면 가 id 1 (Root Item) 하위 항목이 자동으로 삭제됩니까?

UPDATE 내가 다시 시도

테이블 :

CREATE TABLE `navigation` (
`id` int(10) unsigned NOT NULL auto_increment, 
`name` VARCHAR(32), 
`url` VARCHAR(32), 
`position` int(10), 
`parent_id` int(10) unsigned NOT NULL, 
PRIMARY KEY (`id`), 
KEY `type` (`parent_id`) 
CONSTRAINT `??????` FOREIGN KEY (`parent_id`) 
    REFERENCES `types` (`id`) ON DELETE CASCADE ON UPDATE CASCADE 
) 

그러나 어떤 가치 필요 라인 9?

+0

여기 테이블이 이미 있습니다. –

답변

0

?????? 테이블 사이에 생성하는 외래 키 (your_key_name) 여야합니다. 네비게이션의 'parent_id'는 유형의 'id'에 연결됩니다. 탐색 테이블에 업데이트 또는 삭제가 완료되면 삭제/업데이트가 유형 테이블에 계단식으로 연결됩니다.

CONSTRAINT `navigate2types` FOREIGN KEY (`parent_id`) 
    REFERENCES `types` (`id`) ON DELETE CASCADE ON UPDATE CASCADE 

InnoDB 스토리지 엔진을 사용해야한다는 점에 유의하십시오.

+0

쿼리를 실행할 때 :/* SQL 오류 (1005) : 테이블 'cms.navigation'을 만들 수 없습니다. (errno : 150) 외래 키 제약 조건이 잘못 구성되었습니다. * / –