Да, това може да се направи лесно, трябва да изглежда по следния начин:
INSERT INTO MyTable VALUES ("John", 123, "US"), ("Carl", 123, "EU"), ("Jim", 123, "FR");
Въпреки това е добра практика за програмиране да посочите колоните от вашата таблица в заявката, например:
INSERT INTO MyTable (Column1, Column2, Column3)
VALUES ("John", 123, "US"), ("Carl", 123, "EU"), ("Jim", 123, "FR");
РЕДАКТИРАНЕ:Можете да създадете вашата заявка по този начин (в for
цикъл), $total
е вашият потребителски вход:
$sql = "INSERT INTO MyTable (Column1, Column2, Column3) VALUES";
//Build SQL INSERT query
for ($i = 1; $i <= $total; $i++) {
$sql .= " ($value1, $value2, $value3), ";
}
//Trim the last comma (,)
$sql = rtrim($sql,",");
//Now, the $sql var contains the complex query.
$result = mysql_query($sql);
Както можете да видите, не изпълнете INSERT
израз в цикъла, а по-скоро изграждаме текста на SQL заявката и след това ще го изпълним с едно преминаване.