Skip to content

Instantly share code, notes, and snippets.

@yitsushi
Created June 19, 2011 21:37
Show Gist options
  • Save yitsushi/1034796 to your computer and use it in GitHub Desktop.
Save yitsushi/1034796 to your computer and use it in GitHub Desktop.
mysql insert
<?php
DEFINE('MYSQL_LIMIT', 5000);
$datas = array(
array(1,2,3),
array(1,2,3),
array(1,2,3),
array(1,2,3),
array(1,2,3)
);
$query_base = 'INSERT INTO my_table (`F1`, `F2`, `F3`) VALUES ';
$param_base = '(%s, %s, %s)';
$separator = ', ';
$queries = array();
$q = $query_base;
$first = true;
foreach($datas as $data) {
$length = strlen($q)
if ($length > MYSQL_LIMIT) {
array_push($queries, $q.';');
$q = $query_base;
$first = true;
}
if ($first === false) $q .= $separator;
$q .= sprintf($param_base, $data[0], $data[1], $data[2]);
$first = false;
}
if (strlen($q) > strlen($query_base)) array_push($queries, $q.';');
foreach($queries as $q) mysql_query($q);
// Ha van benne hiba azert van mert nem probaltam ki, csak az elmelet miatt irtam le... es egy texareaban irtam ^_^
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment