2013-05-29 4 views
1

엑셀 시트에 많은 양의 데이터가 있습니다. Excel 시트에는 5 ~ 6 개의 탭이 있으며 각 탭은 다른 탭에서 서로 다릅니다. 이제 배열을 사용하여 데이터베이스에 모든 데이터를 삽입하려고하지만 문제는 열이 없기 때문입니다. 배열 이름으로 열 이름을 사용하는 방법이 있습니까?많은 양의 엑셀 데이터를 MySQL 데이터베이스에 삽입하십시오.

$inserarray = array(); 

$inserarray['bl'][0] = "INSERT INTO `new`.`bl` 
(`Code` ,`url` ,`date` ,`Bl` , `Title` ,`Sub`)"; 

$inserarray['bl'][1] = "VALUES ('1', '1', '12', '12', 'ds', 's', 'sd', 's');"; 

$inser_query = $inserarray[$d1][0]; // [column_name][] 

$process_insertarray[] = "('".implode("','",$projdetail)."','".implode("','",$sup)."')"; 

$final_query = $inser_query.''.'VALUES'.implode(',',$process_insertarray); 
+0

실제로 이것을 위해 PHPExcel 라이브러리를 사용하고 있습니까? –

+0

예 ... 나는 이것을 위해 PHPExcel을 사용하고 있습니다. – tushAR

+0

PHPExcel에서 데이터를 추출하거나 SQL 문을 작성하는 데 문제가 있습니까? –

답변

0

는 대량의 데이터 인 경우, 내가 (다른 이름으로 저장) CSV (또는 TSV)로 엑셀 데이터 파일을 수출하고 DB로 가져 선호 :

여기 내 코드입니다.

내 보낸 파일의 이름이 'data.csv'라고 가정합니다. mysql 명령 인터프리터에서이 명령을 사용하여 파일을 가져올 수 있습니다.

load data local infile 'data.csv' into table YOURTABLE 

같은 번호 (입력) 열 엑셀, 그리고 불 테이블을 작성해야합니다! 각 탭에 대해 별도의 표를 만드는 것이 좋습니다 (개수와 유형이 다른 경우).

관련 문제