Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

inserir um único conjunto de dados várias vezes mysql


Sim, isso pode ser feito facilmente, deve ser algo assim:
INSERT INTO MyTable VALUES ("John", 123, "US"), ("Carl", 123, "EU"), ("Jim", 123, "FR");

No entanto, é uma boa prática de programação especificar as colunas da sua tabela na consulta, por exemplo:
INSERT INTO MyTable (Column1, Column2, Column3) 
VALUES ("John", 123, "US"), ("Carl", 123, "EU"), ("Jim", 123, "FR");

EDIT:Você pode construir sua consulta assim (em for ciclo), o $total é sua entrada de usuário:
$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);

Como você pode ver nós não execute o INSERT no loop, mas criamos o texto da consulta SQL e depois vamos executá-lo em uma passagem.