Le nombre maximum de lignes que vous pouvez insérer dans une instruction est de 1000 lors de l'utilisation de INSERT INTO ... VALUES...
c'est-à-dire
INSERT INTO TableName( Colum1)
VALUES (1),
(2),
(3),...... upto 1000 rows.
Mais si vous utilisez une instruction SELECT pour insérer des lignes dans une table, il n'y a pas de limite pour cela, quelque chose comme...
INSERT INTO TableName (ColName)
Select Col FROM AnotherTable
Venons-en maintenant à votre deuxième question. Que se passe-t-il lorsqu'une erreur se produit lors d'une insertion.
Eh bien, si vous insérez des lignes à l'aide d'une construction à valeurs multiples
INSERT INTO TableName( Colum1)
VALUES (1),
(2),
(3)
Dans le scénario ci-dessus, si une insertion de ligne provoque une erreur, toute l'instruction sera annulée et aucune des lignes ne sera insérée.
Mais si vous insérez des lignes avec une instruction distincte pour chaque ligne, c'est-à-dire ...
INSERT INTO TableName( Colum1) VALUES (1)
INSERT INTO TableName( Colum1) VALUES (2)
INSERT INTO TableName( Colum1) VALUES (3)
Dans le cas ci-dessus, chaque insertion de ligne est une instruction distincte et si une insertion de ligne a provoqué une erreur, seule cette instruction d'insertion spécifique sera annulée, le reste sera inséré avec succès.