-1
votes

Insérer plusieurs données avec PHP

J'essaie d'insérer plusieurs données dans une table, mais j'ai eu une erreur indiquant:

Vous avez une erreur dans votre syntaxe SQL; Vérifiez le manuel qui correspond à votre version de Server MySQL pour la bonne syntaxe à utiliser à proximité 'Insérer dans l'auteur (FirstName, Nom) ("rasmus", "lerdorf") Insertion int' à la ligne 1 p> BlockQuote>

Voici la méthode: P>

$sql = "INSERT INTO author (firstname, lastname)  VALUES ('Roal', 'Dahl')";
$sql .= "INSERT INTO author (firstname, lastname)  VALUES ('Rasmus', 'Lerdorf')";
$sql .= "INSERT INTO author (firstname, lastname)  VALUES ('Jane', 'Doe')";


2 commentaires

Supprimer . ici $ sql. = dans les deux requêtes


Sauf si vous utilisez MySQLI_MULTI_QUERY ou PDO :: ATTRE_EMULE_PREPARES, vous ne pouvez pas utiliser plusieurs inserts dans une requête. Séparez-les.


3 Réponses :


3
votes

Généralement, MySQLI et PDO ne peuvent pas exécuter plusieurs déclarations dans une seule requête. Il existe des alternatives telles que mysqli_multi_query , mais ce n'est pas Vraiment ce dont vous avez besoin.

Votre requête peut avoir plusieurs lignes ajoutées en ajoutant des sections supplémentaires après Valeurs CODE> Comme: P>

$sql = "INSERT INTO author (firstname, lastname)  VALUES ";
$sql .= "('Roal', 'Dahl'), ('Rasmus', 'Lerdorf'), ('Jane', 'Doe')";


0 commentaires

5
votes

Vous pouvez le faire:

  $sql = INSERT INTO author ( firstname, lastname) VALUES ('Roal', 'Dahl'), ('Rasmus', 'Lerdorf'), ('Jane', 'Doe');


0 commentaires

-1
votes

Vous pouvez utiliser deux options:

mysqli_multi_query xxx

ou utilisez une requête comme: xxx

change $ mysqli avec votre connexion


0 commentaires