`` `php
PHP
// database -verbindingsparameters
$ serverName ="localhost";
$ gebruikersnaam ="Your_UserName";
$ wachtwoord ="Your_Password";
$ dbName ="Your_Database";
// verbinding maken
$ conn =new mysqli ($ serverName, $ gebruikersnaam, $ wachtwoord, $ dbName);
// Controleer de verbinding
if ($ conn-> connect_error) {
Die ("Verbinding mislukt:". $ conn-> connect_error);
}
// Bereid SQL -instructie voor
$ sql ="invoegen in uw_table (kolom1, kolom2, ...) waarden (?,?, ...)";
$ stmt =$ conn-> voorbereid ($ sql);
// Controleer of de voorbereiding van de statement succesvol was
if ($ stmt ===false) {
Die ("Foutvoorbereiding Verklaring:". $ conn-> fout);
}
// Loop door rijen
voor ($ i =1; $ i <=10000; $ i ++) {
// Genereer gegevens voor elke rij
$ column1data ="value1_". $ i;
$ column2data ="value2_". $ i;
// ...
// bind gegevens aan parameters
$ stmt-> bind_param ("sss ...", $ column1data, $ column2data, ...); // bind gegevenstypen dienovereenkomstig (bijv. "SSS" voor drie snaren)
// Voer de instructie uit
if (! $ stmt-> execute ()) {
Die ("Foutuitvoerverklaring:". $ stmt-> fout);
}
}
// Sluit statement en verbinding
$ stmt-> close ();
$ conn-> close ();
?>
`` `
Verklaring:
1. Databaseverbinding: Stel een verbinding tot stand met uw MySQL -database met behulp van de bibliotheek 'MySqli'.
2. Bereid statement: Bereid de SQL -insert -instructie voor met behulp van `mysqli ::preparaat ()`. Dit helpt bij het voorkomen van kwetsbaarheden van SQL -injectie.
3. Bindparameters: Bind de gegevens voor elke kolom aan de voorbereide instructie met behulp van `mysqli_stmt ::bind_param ()`. Geef de gegevenstypen op van de parameters (bijv. `S` voor string,` i` voor gehele getal).
4. Lus en uitvoeren: Herhaald door 10000 rijen, gegevens voor elke rij genereren en de voorbereide instructie uitvoeren met `mysqli_stmt ::execute ()`.
5. Foutafhandeling: Voeg foutafhandeling toe om problemen op te vangen tijdens de voorbereiding of uitvoering van de statement.
6. Verbindingen sluiten: Sluit de voorbereide instructie en databaseverbinding na voltooiing.
belangrijke opmerkingen:
* Gegevensgeneratie: Vervang de tijdelijke aanduidingen voor `column1data`,` column2data`, enz. Door de werkelijke logica van gegevensgeneratie op basis van uw behoeften.
* Prestatie -optimalisatie: Overweeg om transacties te gebruiken voor bulkinvoegingen om de efficiëntie te verbeteren, vooral voor grote datasets. U kunt de lus in een `begin transactie 'en' commit '-blok wikkelen.
* Gegevenstype Mapping: Zorg ervoor dat de gegevenstypen worden gebruikt in `bind_param ()` match de kolomgegevenstypen in uw MySQL -tabel.
* Foutlogboekregistratie: Implementeer robuuste foutregistratie om eventuele problemen tijdens het invoegproces bij te houden.
Deze code biedt een basiskader. Pas de gegevensgeneratie en foutafhandeling aan om bij uw specifieke use case te passen. Vergeet niet om de prestaties van uw invoegproces te testen en te volgen, vooral bij het omgaan met grote datasets. |