2016-10-17 2 views
0

나는 csv 파일이 있으며, LOAD DATA LOCAL INFILE 명령을 사용하여 mysql에로드합니다.하지만 왜 5 행만 읽는 지 알 수 없습니다. 여기 내 PHP 코드 :LOAD DATA LOCAL INFILE은 5 줄만 입력합니다.

<?php 
include "../config.php"; 
$conn = new mysqli($servername, $username, $password, $dbname); 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} //$conn->connect_error 

$sql= "LOAD DATA LOCAL INFILE 'uploads/cell.csv' 
INTO TABLE table3 
CHARACTER SET UTF8 
FIELDS TERMINATED BY ',' 
LINES TERMINATED BY '\r\n'"; 
$result   = $conn->query($sql); 
echo("Error description: " . mysqli_error($conn)); 
?> 

및 CSV 파일은 아래 링크에 첨부되어 있습니다. PHP 코드를 실행하면 다음과 같습니다 후 MySQL의

cell.csv

: 나는 마침내 나 자신에 의해 그것을 알아 냈다

mysql

+0

해당 CSV 파일의 헤더 행을 삭제해야합니다. 표에 값을 그대로두고 다시 시도하십시오. MySQL이 일부 행을 생략하도록 지정할 수 있습니다. http://stackoverflow.com/questions/14127529/mysql-import-data-from-csv-using-load-data-infile – valicu2000

+0

에서 10 개가 넘는 행을 삭제하지만 삭제할 때 아무 것도 추가하지 않습니다. –

+0

일부 필드에는 여러 개의 쉼표가 있으며 구조가 깨집니다. 귀하의 쿼리에서 : FIELDS TERMINATED BY ','FILLDS TERMINATED BY '대신' ''ENCLOSED BY ","이 자습서를 읽을 수 있습니다 : http://www.mysqltutorial.org/import-csv-file-mysql-table /. 또한 행이 \ r \ n 또는 \ n에 의해 종료되는지 확실하지 않습니다. – valicu2000

답변

0

, 문제가 있었다/R/N, 라인 somr는 마무리/R 및/연구/일부 마무리 N, I는 상기 코드 chenged :

<?php 
include "../config.php"; 
$conn = new mysqli($servername, $username, $password, $dbname); 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} //$conn->connect_error 

$sql= "LOAD DATA LOCAL INFILE 'uploads/cell.csv' 
INTO TABLE table3 
CHARACTER SET UTF8 
FIELDS TERMINATED BY ',' 
LINES TERMINATED BY '\r'"; 
$result   = $conn->query($sql); 
echo("Error description: " . mysqli_error($conn)); 
?> 

하고 문제를 해결.

관련 문제