Heim > Datenbank > MySQL-Tutorial > Wie können wir mit JDBC Dateien in die MySQL-Datenbank einfügen/speichern?

Wie können wir mit JDBC Dateien in die MySQL-Datenbank einfügen/speichern?

PHPz
Freigeben: 2023-09-16 17:01:09
nach vorne
1264 Leute haben es durchsucht

Im Allgemeinen wird der Inhalt einer Datei in einer MySQL-Datenbank unter dem Datentyp Clob (TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT) gespeichert.

JDBC bietet Unterstützung für den Datentyp Clob, der den Inhalt von Dateien in Datenbanktabellen speichert. Die Methode

setCharacterStream()

der Schnittstelle PreparedStatement akzeptiert eine Ganzzahl, die den Index des Parameters darstellt, und ein Reader-Objekt als Parameter.

Und setzt den Inhalt des angegebenen Reader-Objekts (Datei) auf den Wert des Parameters (Platzhalter) am angegebenen Index.

Sie können diese Methode immer dann verwenden, wenn Sie sehr große Textwerte senden müssen.

Textdateien mit JDBC speichern:

Wenn Sie Dateien mit dem JDBC-Programm in einer Datenbank speichern müssen, erstellen Sie eine Tabelle mit dem Datentyp Clob (TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT) wie unten gezeigt:

CREATE TABLE Articles(Name VARCHAR(255), Article LONGTEXT);
Nach dem Login kopieren

Verwenden Sie jetzt JDBC, um eine Verbindung herzustellen die Datenbank und bereiten Sie ein PreparedStatement vor. Fügen Sie den Wert in die oben erstellte Tabelle ein:

String query = "INSERT INTO Tutorial(Name, Article) VALUES (?,?)";PreparedStatement pstmt = con.prepareStatement(query);
Nach dem Login kopieren

Verwenden Sie die Setter-Methode der PreparedStatement-Schnittstelle, um den Wert des Platzhalters festzulegen, und verwenden Sie die Methode setCharacterStream(), um die Clob-Daten festzulegen Typwert.

Beispiel

Hier ist ein Beispiel, das zeigt, wie eine Datei eingefügt wird Verwenden Sie das JDBC-Programm, um eine Verbindung zur MySQL-Datenbank herzustellen. Hier haben wir eine Tabelle mit dem Datentyp Clob erstellt und Werte darin eingefügt.

import java.io.FileReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class InsertingFileToDatabase {
   public static void main(String args[]) throws Exception {
      //Registering the Driver
      DriverManager.registerDriver(new com.mysql.jdbc.Driver());
      //Getting the connection
      String mysqlUrl = "jdbc:mysql://localhost/sampleDB";
      Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");
      System.out.println("Connection established......");
      //Inserting values
      String query = "INSERT INTO Articles(Name, Article) VALUES (?, ?)";
      PreparedStatement pstmt = con.prepareStatement(query);
      pstmt.setString(1, "article1");
      FileReader reader = new FileReader("E:\data\article1.txt");
      pstmt.setCharacterStream(2, reader);
      pstmt.execute();
      pstmt.setString(1, "article2");
      reader = new FileReader("E:\data\article2.txt");
      pstmt.setCharacterStream(2, reader);
      pstmt.execute();
      pstmt.setString(1, "article3");
      reader = new FileReader("E:\data\article3.txt");
      pstmt.setCharacterStream(2, reader);
      pstmt.execute();
      System.out.println("Data inserted......");
   }
}
Nach dem Login kopieren

Ausgabe

Connection established......
Data inserted......
Nach dem Login kopieren

Mit MySQL Workbench können Sie den Inhalt einer Tabelle in verschiedene Dateien exportieren, z. B. in HTML-Dateien, CSV-Dateien, Textdateien usw. Wenn Sie den Inhalt einer Tabelle exportieren, nachdem Sie Daten in eine HTML-Datei eingefügt haben, sieht die Ausgabe folgendermaßen aus:

我们如何使用 JDBC 将文件插入/存储到 MySQL 数据库中?

Das obige ist der detaillierte Inhalt vonWie können wir mit JDBC Dateien in die MySQL-Datenbank einfügen/speichern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage