1
SQL Server db에서 추출한 csv를 MySQL로 가져 오려고합니다.키 'PRIMARY'에 대한 중복 항목
나는 파일로드하려면이 명령을 사용하고 있습니다 :
LOAD DATA INFILE '/Users/Tyler/Desktop/playersToTeams.txt' INTO TABLE players_to_teams FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
을 그리고 난이 오류를 얻을 :
Error Code: 1062. Duplicate entry '124547' for key 'PRIMARY'
내가 실행
grep 124547 playersToTeams.txt
:
119683,True,True,124547,1493,2011-08-31 02:22:56.630000000,,,,,http://bucknellbison.cstv.com///sports/m-wrestl/mtt/stolfi_joe00.html,,,,,,
124547,True,True,129411,14726,2011-08-31 02:22:56.630000000,Free/Breast,,,,http://usctrojans.collegesports.com/sports/m-swim/mtt/walling_emmett00.html,,,,,,
내가 할 수있는을 첫 번째 항목의 4 번째 열이 첫 번째 열 (pk, id)과 동일한 번호를 갖지만 4 번째 열은 h 그 위에 어떤 종류의 색인이 있어도. 여기
는 SQL 워크 벤치에 의해 생성 된 생성 스키마이다 : 나는LOAD DATA
명령을 다시 실행하면
CREATE TABLE `players_to_teams` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`IsActive` tinyint(1) DEFAULT NULL,
`IsVisible` tinyint(1) DEFAULT NULL,
`PlayerId` int(11) DEFAULT NULL,
`TeamId` int(11) DEFAULT NULL,
`CreationDate` datetime DEFAULT NULL,
`Position` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`Number` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`Club` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`BT` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`BioLink` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`OtherBioLink` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`StartYear` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`EndYear` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`NeulionPlayerID` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`SeasonYear` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`GamesPlayed` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`created_at` datetime NOT NULL,
`updated_at` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=124549 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci$$
는 아무것도 변경하지 않고, 내가 다른 오류가 발생,이 시간은 수 (124549 이전 시간보다 2 이상이다 124547 대). 다시 실행하면 124552로 건너 뜁니다.
이 중복 오류의 원인은 무엇입니까?
감사
'LOAD DATA' 명령을 다시 실행하기 전에 항상 테이블을 잘라 버렸습니까? 텍스트 파일의 형식이 올바른지 확인하십시오. 모든 행마다 동일한 수의 열이 있습니까? 텍스트 파일 자체가 UTF-8입니까? – Vapire
텍스트에 빈 줄이 있거나 ID가 비어있는 줄이 있는지 확인할 수 있습니까? 아마도 Auto_increment와 관련이 있습니다. – flo
@Vapire - 네, 항상 LOAD DATA를 실행하기 전에 테이블을 비 웁니다. 열 수 및 인코딩 수를 확인하는 방법에 대한 아이디어가 있습니까? –