2012-01-12 2 views
2

내가 이노 엔진과 SQL 덤프를 가져올 때, 나는 같은 몇 가지 문제가있다 : 수입 SQL 덤프

 
#1005 - Can't create table '.\db_name\table_name.frm' (errno: 121) . 

가 기본 엔진을 사용

, 그것은 성공적으로 실행합니다.

어떻게 해결할 수 있습니까? 변화 SET의 FOREIGN_KEY_CHECKS = "0"에서 "1"또한 내가 가지고


는 여러분 모두 감사합니다,하지만 중복/무효 외래 키가 없습니다; 하지만 좋은 결과 여기 phpMyAdmin을 내 오류 코드

Error 

SQL query: 

CREATE TABLE `mb_comment` (
`content` text COLLATE utf8_unicode_ci, 
`post_id` int(11) default NULL , 
`user_id` varchar(30) COLLATE utf8_unicode_ci default NULL , 
`id` int(11) NOT NULL AUTO_INCREMENT , 
PRIMARY KEY (`id`) , 
KEY `FK_comment` (`post_id`) , 
KEY `FK_comment2` (`user_id`) , 
CONSTRAINT `FK_comment2` FOREIGN KEY (`post_id`) REFERENCES `mb_post` (`id`) ON DELETE CASCADE ON UPDATE CASCADE , 
CONSTRAINT `FK_comment` FOREIGN KEY (`user_id`) REFERENCES `mb_user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE 
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci; 

MySQL said: Documentation 
#1005 - Can't create table '.\myblog_db\mb_comment.frm' (errno: 121) 

답변

2

가 유효하지 않은 외래 키 제약 같은데, 예를 들어, 존재하지 않는 레코드 또는 테이블에 대한 참조 기본 엔진의 MyISAM 다음의 경우

SET foreign_key_checks = 0; 

# IMPORT CODE GOES HERE 

SET foreign_key_checks = 1; 

:

스키마/테이블의 전체 덤프를 가져올 수 있는지 확인되어 가장 좋은 것은, 당신은 또한 외래 키 제약 조건 검사를 비활성화하여 가져 오기를 시도 할 수 있습니다 외부 키는 지원되지 않으므로 무시됩니다.

0

외부 키 중복 이름이기 때문에 생각합니다. 다른 엔진은 innodb에 foreign 키 참조 무결성 검사가 없습니다.