Rumah  >  Artikel  >  pangkalan data  >  Tulis contoh JDBC untuk memasukkan nilai jenis data Clob ke dalam jadual?

Tulis contoh JDBC untuk memasukkan nilai jenis data Clob ke dalam jadual?

王林
王林ke hadapan
2023-08-25 16:21:081228semak imbas

编写一个 JDBC 示例来将 Clob 数据类型的值插入表中?

Andaikan kita sudah mempunyai jadual bernama MyData dalam pangkalan data, yang diterangkan di bawah.

+---------+--------------+------+-----+---------+-------+
| Field   | Type         | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| Name    | varchar(255) | YES  |     | NULL    |       |
| Article | longtext     | YES  |     | NULL    |       |
+---------+--------------+------+-----+---------+-------+

Jika anda perlu memasukkan nilai int ke dalam jenis data clob menggunakan program JDBC, anda perlu menggunakan kaedah yang membaca kandungan fail dan menetapkannya sebagai baris pangkalan data. Antara muka ReadyStatement menyediakan kaedah sedemikian. Kaedah

void setCharacterStream(int parameterIndex, Reader reader) menetapkan kandungan objek pembaca kepada nilai parameter pada indeks yang diberikan. Variasi lain kaedah ini ialah:

  • void setCharacterStream(intparameterIndex, Reader reader, int length)

  • void setCharacterStream(intparameterIndex, Reader reader, longid length)

b x ) Kaedah

menetapkan objek java .sql.Clob yang diberikan sebagai nilai parameter pada indeks yang diberikan. Variasi lain kaedah ini ialah:

    void setClob(intparameterIndex, Reader reader)
  • void setClob (int parameterIndex, Reader reader, long length)
  • Anda boleh menggunakan salah satu daripada dua kaedah ini ditetapkan kepada jenis data Clob.

Contoh

Contoh berikut menggunakan kaedah setClob() untuk menetapkan nilai kepada jenis data Clob. h3>
import java.io.FileReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class InsertingValueInClob {
   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 MyData(Name, Article ) VALUES (?, ?)";
      PreparedStatement pstmt = con.prepareStatement(query);
      pstmt.setString(1, "JavaFX");
      FileReader reader = new FileReader("E:\images\javafx.txt");
      pstmt.setClob(2, reader);
      pstmt.execute();
      System.out.println("Data inserted");
   }
}

Output

Connection established......
Table Created......
Contents of the table are:
JavaFX
E:\images\MyData_clob_output1.txt

Jika anda cuba menggunakan MySQL Workbench untuk melihat nilai clob dalam rekod, anda boleh melihat data teks dimasukkan seperti ini:

Atas ialah kandungan terperinci Tulis contoh JDBC untuk memasukkan nilai jenis data Clob ke dalam jadual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam