반응형
보통 데이타를 DB에 집어 넣을 때 load data infile 을 이용해서 화일로 부터 집어 넣습니다.
이런 방법도 무쟈게 빠름니다.
하지만 insert를 써서 데이타를 집어넣는 방법도 빠르게 할 수 있습니다.
예 1)
for($i=0;$i<4000;$++){
$j=$j+1;
$query=mysql_query("insert into table_name values('',$i,$j)");
}
예 1같은 경우는 insert를 4000번 이나 계속합니다. 좀 무리가 가겠죠..
예 2)
for($i=0;$i<4000;$++){
$j=$j+1;
$query_insert .="('',$i,$j),";
}
$query_insert=eregi_replace("[,]$","",$query_insert);//마지막에 붙는 ,를 제거합니다.
$query=mysql_query("insert into table_name values $query_insert");//한꺼번에 집어넣습니다.
예제 2와 같이하면 순식간에 데이타가 들어갑니다.
이렇게 하면 10만 집어넣는것도 몇분이면 끝납니다.
주의할점은 메모리에 따라서 인서트할 수 있는 수가 결정되는 거 같더라구요!..
이상 허접팁이었습니다.
이런 방법도 무쟈게 빠름니다.
하지만 insert를 써서 데이타를 집어넣는 방법도 빠르게 할 수 있습니다.
예 1)
for($i=0;$i<4000;$++){
$j=$j+1;
$query=mysql_query("insert into table_name values('',$i,$j)");
}
예 1같은 경우는 insert를 4000번 이나 계속합니다. 좀 무리가 가겠죠..
예 2)
for($i=0;$i<4000;$++){
$j=$j+1;
$query_insert .="('',$i,$j),";
}
$query_insert=eregi_replace("[,]$","",$query_insert);//마지막에 붙는 ,를 제거합니다.
$query=mysql_query("insert into table_name values $query_insert");//한꺼번에 집어넣습니다.
예제 2와 같이하면 순식간에 데이타가 들어갑니다.
이렇게 하면 10만 집어넣는것도 몇분이면 끝납니다.
주의할점은 메모리에 따라서 인서트할 수 있는 수가 결정되는 거 같더라구요!..
이상 허접팁이었습니다.
반응형
'웹프로그램' 카테고리의 다른 글
PHP register_global=Off 상태 라도 변수 먹히게 (0) | 2008.10.18 |
---|---|
PHP 파일 업로드시 권한 설정 (0) | 2008.10.18 |
PHP mktime - 달력 관련 (0) | 2008.10.18 |
PHP unix 타임 보기 (0) | 2008.10.18 |
php 외부변수들 - phpinfo() (0) | 2008.10.18 |
PHP 문자열 함수 (0) | 2008.10.18 |
img를 php 페이지로 부르기 (0) | 2008.10.18 |
PHP 설치 후 POST 값이 전송되지 않을경우 (0) | 2008.10.18 |