Lernen Sie, wie Sie in 6 Sekunden 1 Million Datensätze in MySQL einfügen

Lernen Sie, wie Sie in 6 Sekunden 1 Million Datensätze in MySQL einfügen

1. Idee

Es dauerte nur 6 Sekunden, um 1.000.000 Datensätze in MySQL einzufügen!

Wichtige Punkte:

1. Verwenden des PreparedStatement-Objekts


2. rewriteBatchedStatements=true aktiviert Batch-Einfügungen, Einfügungen werden nur einmal ausgeführt und alle Einfügungen sind schneller.

2. Code

Paket test0823.demo1;

importiere java.sql.*;

/**
 * @Autor: Bei-Zhen
 * @Datum: 24.08.2020 0:43
 */
öffentliche Klasse JDBC2 {

  //statisch int count = 0;

  öffentliche statische void main(String[] args) {

    langer Start = System.currentTimeMillis();
    Verbindung();
    langes Ende = System.currentTimeMillis();
    System.out.println("Benötigte Zeit: " + (Ende - Start)/1000 + "Sekunden");
  }

  öffentliche statische Leere conn(){
    //1. Importieren Sie das JAR-Treiberpaket //2. Registrieren Sie den Treiber (das JAR-Treiberpaket nach mysql5 kann den Treiberregistrierungsschritt weglassen)
    //Klasse.fürName("com.mysql.jdbc.Driver");
    // 3. Holen Sie sich das Datenbankverbindungsobjekt Connection conn = null;
    Vorbereitete Anweisung pstmt = null;
    {
      versuchen {
        //"&rewriteBatchedStatements=true", mehrere Daten gleichzeitig einfügen, nur einmal einfügenconn = DriverManager.getConnection("jdbc:mysql:///test?" + "&rewriteBatchedStatements=true","root","root");
        //4. SQL-Anweisung definieren String sql = "insert into user values(default,?,?)";
        //5. Holen Sie sich das PreparedStatement-Objekt, das SQL ausführt
        pstmt = conn.prepareStatement(sql);
        //6. Kontinuierlich SQL generieren
        für (int i = 0; i < 1000000; i++) {
          pstmt.setString(1,(int)(Math.random()*1000000)+"");
          pstmt.setString(2,(int)(Math.random()*1000000)+"");
          pstmt.addBatch();
        }
        //7. Einmal Daten in die Datenbank einfügen pstmt.executeBatch();
        System.out.println("1.000.000 Informationen wurden erfolgreich hinzugefügt!");

      } Fang (SQLException e) {
        e.printStackTrace();
      Endlich
        //8. Ressourcen freigeben //Nullzeigerausnahme vermeiden if (pstmt != null) {
          versuchen {
            pstmt.schließen();
          } Fang (SQLException e) {
            e.printStackTrace();
          }
        }

        wenn(conn != null) {
          versuchen {
            Verbindung schließen();
          } Fang (SQLException e) {
            e.printStackTrace();
          }
        }
      }
    }

  }

}

3. Ergebnisse der Operation

1.000.000 Informationen wurden erfolgreich hinzugefügt!
Dauer: 6 Sekunden


Dies ist das Ende dieses Artikels zum Einfügen von 1 Million Datensätzen in MySQL in 6 Sekunden. Weitere Informationen zum Einfügen von 1 Million Datensätzen in MySQL finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • MySql schnelles Einfügen von zig Millionen großen Datenbeispielen
  • So fügen Sie in 88 Sekunden 10 Millionen Datensätze in eine MySQL-Datenbanktabelle ein
  • Beispielcode zum Einfügen von Millionen von Daten in MySQL mithilfe von JDBC in Java
  • So fügen Sie schnell Millionen von Testdaten in MySQL ein

<<:  Linux verwendet lsof/extundelete-Tools, um versehentlich gelöschte Dateien oder Verzeichnisse wiederherzustellen

>>:  Vergleich der Vorteile von vue3 und vue2

Artikel empfehlen

WebStorm kann die Lösung der Vue3-kombinierten API nicht korrekt identifizieren

1 Problembeschreibung Die kombinierte API von Vue...

So installieren Sie MySQL und MariaDB in Docker

Beziehung zwischen MySQL und MariaDB Das Datenban...

Allgemeine Befehle für MySQL-Autorisierung, Start und Dienststart

1. Vier Startmethoden: 1.mysqld Starten Sie den M...

Probleme und Lösungen bei der Installation und Verwendung von VMware

Die virtuelle Maschine wird verwendet oder es kan...

Warum Entwickler Datenbanksperren im Detail verstehen müssen

1.Sperren? 1.1 Was ist ein Schloss? Die eigentlic...

Lernen Sie MySQL auf einfache Weise

Vorwort Die Datenbank war schon immer meine Schwa...

Die einfachste Formularimplementierung des Flexbox-Layouts

Flexibles Layout (Flexbox) erfreut sich zunehmend...

Detaillierte Erläuterung der Vue-Lebenszyklusfunktionen

Inhaltsverzeichnis Lebenszyklusfunktionen Allgeme...

Vue3-Zeitstempelkonvertierung (ohne Verwendung von Filtern)

Wenn vue2 Zeitstempel konvertiert, verwendet es i...

Einfache Methode zur Installation von MySQL unter Linux

Bei der Onlinesuche nach Methoden zur Installatio...

VScode Remote SSH-Remote-Bearbeitung und -Debugging von Code

Die neueste Insider-Version von Visual Studio Cod...