>  기사  >  데이터 베이스  >  JDBC를 사용하여 데이터베이스에서 파일을 어떻게 검색할 수 있나요?

JDBC를 사용하여 데이터베이스에서 파일을 어떻게 검색할 수 있나요?

PHPz
PHPz앞으로
2023-09-02 10:09:011040검색

ResultSet 인터페이스는 일반적으로 파일의 내용을 저장하는 Clob 데이터 유형을 검색하기 위해 getClob()getCharacterStream()이라는 메서드를 제공합니다.

이 메소드는 열 인덱스를 나타내는 정수(또는 열 이름을 나타내는 문자열 값)를 받아들이고 지정된 열에서 값을 검색합니다.

차이점은 getClob() 메소드가 Clob 객체를 반환하는 반면 getCgaracterStream( ) 메소드는 데이터 유형 내용의 Reader 객체를 포함하는 Clob을 반환합니다.

Example

다음 설명을 사용하여 데이터베이스에 Articles라는 테이블을 생성한다고 가정합니다.

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

그리고 아래와 같이 Article 1, Article 2 및 Article 3라는 세 개의 기사를 삽입했습니다.

我们如何使用 JDBC 从数据库中检索文件?

Example

다음 프로그램은 getString() 및 getClob() 메서드를 사용하여 테이블을 검색합니다. 그리고 지정된 파일에 저장합니다.

import java.io.FileWriter;
import java.io.Reader;
import java.sql.Clob;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class RetrievingFileFromDatabase {
   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......");
      //Creating aStatement
      Statement stmt = con.createStatement();
      //Retrieving the data
      ResultSet rs = stmt.executeQuery("select * from Articles");
      int j = 0;
      System.out.println("Contents of the table are: ");
      while(rs.next()) {
         System.out.println(rs.getString("Name"));
         Clob clob = rs.getClob("Article");
         Reader reader = clob.getCharacterStream();
         String filePath = "E:\Data\clob_output"+j+".txt";
         FileWriter writer = new FileWriter(filePath);
         int i;
         while ((i = reader.read())!=-1) {
            writer.write(i);
         }
         writer.close();
         System.out.println(filePath);
         j++;
      }
   }
}

출력

Connection established......
Contents of the table are:
article1
E:\Data\clob_output0.txt
article2
E:\Data\clob_output1.txt
article3
E:\Data\clob_output2.txt

위 내용은 JDBC를 사용하여 데이터베이스에서 파일을 어떻게 검색할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제