한 번에 대량의 데이터 업데이트를 하는 방법 insert

3744 단어 LaravelPHPtech

개시하다


excel의 표 데이터 중의 모든 칸을 DB에 저장할 때, 하나하나 저장하면 대량의 조회가 나타난다.
따라서 통일적으로 보존하는 절차를 변경했기 때문에 그 당시의 방법을 먼저 기술한다.

오리지널


foreach($all_data as $data){
	foreath($data as $info) {
	Test::create(xxxx)
	}
}
상기 형식으로tests표에 데이터를 저장한다.
위와 같은 상황에서foreach에foeach가 있는데 DB에 쓴 횟수가 많고 처리가 무겁다.

수정 후


create_data = [];
foreach($all_data as $data){
	foreath($data as $info) {
	$create_data[] = [
	'company' => "$info->company"
	'xxx' => $info->xxx,
	// 左がカラム名、右が入れたいデータを記述
	]
	}
}

DB::table('tests')->insert($data);
상기 설명에서 한 번의 배열을 만들고 이 배열을 insert와 함께 하면 DB로 실행되는 조회를 한 번에 완성할 수 있습니다.
따라서 저장할 때 처리가 가벼워진다.

최후


insert가 보관하고 있는 것을 모르기 때문에 매우 획기적인 방법입니다.
나는 계속 공부할 내용을 쓸 것이다.

좋은 웹페이지 즐겨찾기