형식이 다른 엑셀 파일 DB에 올리기 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

형식이 다른 엑셀 파일 DB에 올리기 정보

형식이 다른 엑셀 파일 DB에 올리기

본문

엑셀 파일을 DB에 올리고자하는데 형식이 다른경우에 쓰는 방법입니다.

같은 폴더에 CSV로 저장한 엑셀 파일과 빈 query.sql 파일을 하나 생성하고
아래 양식대로 php 파일을 생성합니다.

/* 주석처리부분은 파일 내에서 sql을 실행할 때 이용하세요.
$host="localhost";
$user="myid";
$passwd="mypass";
$dataname="mydb";

$con=@mysql_connect($host,$user,$passwd,true);
@mysql_select_db($dataname,$con) or die("db connect err");
*/

$values = array();
$row = 0;
if (($handle = fopen("filename.csv", "r")) !== FALSE) {
    while (($col = fgetcsv($handle, 40000, ",")) !== FALSE) {
        $values[] = "(\"$col[1]\", \"$col[2]\", \"$col[3]\", \"$col[4]\", \"$col[10]\")"; // 첫번째 셀은 0
        $row++;
    }
    fclose($handle);
}

$query = "insert into name (a, b, c, d, c) values " . implode(",\n", $values);

$fp = fopen('query.sql', 'w');
fwrite($fp, $query);
fclose($fp);

echo "작업이 완료되었습니다!";

그 다음 생성된 sql 파일을 phpMyAdmin과 같은 프로그램에 올리면 끝납니다.

저런 방법을 쓰는 이유는 프로그램에서 관련 쿼리를 처리하게했을 때
제한이 걸리는지 일부밖에 등록이 안되는 경우가 있습니다.
그래서 쿼리 한건에 전부 다 처리하기 위함입니다.
추천
2

댓글 3개

전체 3,313 |RSS
그누4 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT