首頁  >  文章  >  資料庫  >  我們如何使用 JDBC 將檔案插入/儲存到 MySQL 資料庫中?

我們如何使用 JDBC 將檔案插入/儲存到 MySQL 資料庫中?

PHPz
PHPz轉載
2023-09-16 17:01:091192瀏覽

一般來說,檔案的內容在 MySQL 資料庫中儲存在 Clob(TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT)資料類型下。

JDBC 提供了對 Clob 資料類型的支持,將檔案的內容儲存到資料庫的表中。

PreparedStatement介面的 setCharacterStream() 方法接受一個整數,表示參數的索引和 Reader 物件作為參數。

並將給定讀取器物件(檔案)的內容設定為指定索引中的參數(佔位符)的值。

每當您需要發送非常大的文字值時,您都可以使用此方法。

使用JDBC 儲存文字檔案:

如果您需要使用以下方式將檔案儲存在資料庫中JDBC程式建立具有Clob(TINYTEXT,TEXT,MEDIUMTEXT,LONGTEXT)資料類型的表,如下所示:

CREATE TABLE Articles(Name VARCHAR(255), Article LONGTEXT);

現在,使用JDBC 連接到資料庫並準備一個PreparedStatement 將值插入到上面建立的表中:

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

使用PreparedStatement介面的setter方法設定佔位符的值,並使用setCharacterStream()方法設定Clob資料類型的值。

範例

以下是示範如何插入檔案的範例 使用 JDBC 程式連接到 MySQL 資料庫。在這裡,我們建立了一個具有 Clob 資料類型的表,並在其中插入了值。

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......");
   }
}

輸出

Connection established......
Data inserted......

使用 MySQL Workbench,您可以將表格的內容匯出到各種文件,例如 html 檔案、.csv 檔案、文字檔案等。如果在將資料插入 HTML 檔案後匯出表格的內容,則其輸出將如下所示:

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

#

以上是我們如何使用 JDBC 將檔案插入/儲存到 MySQL 資料庫中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除