Heim > Datenbank > MySQL-Tutorial > Wie kann ich mehrere Zeilen effizient und sicher in eine MySQL-Datenbank einfügen?

Wie kann ich mehrere Zeilen effizient und sicher in eine MySQL-Datenbank einfügen?

Susan Sarandon
Freigeben: 2024-12-12 11:55:09
Original
909 Leute haben es durchsucht

How Can I Efficiently and Securely Insert Multiple Rows into a MySQL Database?

Effizientes und sicheres Einfügen mehrerer Zeilen mit MySQLi

Das Einfügen einer großen Anzahl von Zeilen in eine MySQL-Datenbank erfordert sowohl Effizienz als auch Sicherheit. Die Verwendung eines naiven Ansatzes, wie im bereitgestellten PHP-Code gezeigt, kann zu Leistungsproblemen und SQL-Injection-Schwachstellen führen.

Um diese Bedenken auszuräumen, besteht eine optimalere Lösung darin, die Einfügungen innerhalb einer Transaktion durchzuführen und die Anweisung zu verschieben Vorbereitung und Bindung außerhalb der Schleife:

$array = array("array", "with", "about", "2000", "values");
$query = "INSERT INTO table (link) VALUES (?)";
$stmt = $mysqli->prepare($query);
$stmt->bind_param("s", $one);

$mysqli->query("START TRANSACTION");
foreach ($array as $one) {
    $stmt->execute();
}
$stmt->close();
$mysqli->query("COMMIT");
Nach dem Login kopieren

Diese Technik wurde getestet und hat gezeigt, dass sie die Leistung deutlich verbessert. Konkret dauerte das Einfügen von 10.000 Datensätzen mit dem ursprünglichen Ansatz 226 Sekunden, während die optimierte Methode die Aufgabe in nur 2 Sekunden erledigte. Dies stellt eine Effizienzsteigerung um zwei Größenordnungen dar.

Durch die Verwendung von Transaktionen können Sie mehrere Zeilen gleichzeitig einfügen und gleichzeitig die Datenintegrität wahren und den Schutz vor SQL-Injections gewährleisten. Dieser Ansatz bietet sowohl Geschwindigkeit als auch Sicherheit und ist daher die bevorzugte Methode zum effizienten Einfügen großer Datenmengen in eine MySQL-Datenbank.

Das obige ist der detaillierte Inhalt vonWie kann ich mehrere Zeilen effizient und sicher in eine MySQL-Datenbank einfügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage