직장일기/기술공부

php - BULK INSERTING - MYSQL 다량의 데이터 넣기

공부하는리아 2021. 5. 20. 16:58

Bulk Inserting

데이터베이스에 다량의 insert를 할때 유용한 방식이다.

사용 방법은 한 쿼리에 다수의 튜플을 묶어서 넣어주면 된다.

INSERT INTO table ( seq, col ) VALUES ( '1', '가' ) , ( '2', '나' ) , ( '3', '다' )
$arrayList = array('가','나','다'); // 배열 데이터을 반복문읠 이용하여 INSERT 문장을 만든다. 

for ( $i = 0; $i < count($arrayList); $i++ ) { // 일련번호를 생성한다. 
	$seq = $i+1; // Bulk Insert를 위한 서브 SQL을 만든다. 
    $sub_sql_array[] = " ( '{$seq}', '{$arrayList[$i]}' ) "; 
    } 
    // End 배열 데이터을 반복문읠 이용하여 INSERT 문장을 만든다. 
    // Bulk Insert 방식으로 일괄로 데이터를 저장한다. 
    
    $sql = " 
    	INSERT INTO table ( seq, col ) 
        VALUES 
        "; 
    $sub_sql = implode(', ', $sub_sql_array); 
    $sql .= $sub_sql; 
    
    echo $sql; 
    // result 
    // INSERT INTO table ( seq, col ) VALUES ( '1', '가' ) , ( '2', '나' ) , ( '3', '다' )

 

참조 블로그: https://han288.tistory.com/37