Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

JDBC का उपयोग करके डेटाबेस से फाइल कैसे पुनर्प्राप्त करें?


ResultSet इंटरफ़ेस Clob डेटाटाइप को पुनर्प्राप्त करने के लिए getClob() और getCharacterStream() नामक मेथड प्रदान करता है, जिसमें आमतौर पर फाइल की सामग्री संग्रहीत होती है।

ये मेथड कॉलम के इंडेक्स को दर्शाने वाला एक पूर्णांक (या, कॉलम के नाम को दर्शाने वाला एक स्ट्रिंग मान) स्वीकार करते हैं और निर्दिष्ट कॉलम पर मान पुनर्प्राप्त करते हैं।

अंतर यह है कि getClob() मेथड एक Clob ऑब्जेक्ट लौटाता है और getCharacterStream() मेथड एक Reader ऑब्जेक्ट लौटाता है जिसमें Clob डेटाटाइप की सामग्री होती है।

उदाहरण

मान लें कि हमने डेटाबेस में Articles नाम की एक टेबल बनाई है जिसका विवरण निम्नलिखित है।

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

और, हमने इसमें तीन आर्टिकल article 1, article 2 और article 3 के नाम से डाले हैं जैसा कि नीचे दिखाया गया है:

JDBC का उपयोग करके डेटाबेस से फाइल कैसे पुनर्प्राप्त करें?

उदाहरण

निम्नलिखित प्रोग्राम getString() और getClob() मेथड का उपयोग करके Articles टेबल की सामग्री पुनर्प्राप्त करता है और इसे निर्दिष्ट फाइलों में सहेजता है।

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 {       // ड्राइवर रजिस्टर करना       DriverManager.registerDriver(new com.mysql.jdbc.Driver());       // कनेक्शन प्राप्त करना       String mysqlUrl = "jdbc:mysql://localhost/sampleDB";       Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");       System.out.println("Connection established......");       // Statement बनाना       Statement stmt = con.createStatement();       // डेटा पुनर्प्राप्त करना       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

  1. JDBC का उपयोग करके MySQL डेटाबेस में फाइल कैसे डालें/स्टोर करें? JDBC का उपयोग करके MySQL डेटाबेस में फाइल कैसे डालें/स्टोर करें?

    सामान्य तौर पर, फाइल की सामग्री MySQL डेटाबेस में Clob (TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT) डेटाटाइप के तहत संग्रहीत होती है।JDBC Clob डेटाटाइप के लिए समर्थन प्रदान करता है, डेटाबेस में टेबल में फाइल की सामग्री स्टोर करने के लिए।PreparedStatement  इंटरफ़ेस का setCharacterStream() मेथड पैरामीट

  1. - MySQL में JOIN से दूसरी टेबल के ID द्वारा उपयोगकर्ता नाम कैसे प्राप्त करें?

    JOIN सिंटैक्स select username from table1 join table2 on table1.id = table2.fk_id; उदाहरण टेबल 1 (demo77): userid (PK), username insert into demo77 values(1,John), (2,Bob), (3,Mike); टेबल 2 (demo78): id (PK, FK→demo77), countryname insert into demo78 values(1,US), (2,AUS); JOIN क्वेरी और परिणा

  1. - JSP का उपयोग करके फ़ाइल कैसे अपलोड करें?

    एक JSP का उपयोग HTML फॉर्म टैग के साथ उपयोगकर्ताओं को सर्वर पर फ़ाइलें अपलोड करने की अनुमति देने के लिए किया जा सकता है। एक अपलोड की गई फ़ाइल एक टेक्स्ट फ़ाइल, बाइनरी, इमेज फ़ाइल या कोई भी दस्तावेज़ हो सकती है। फ़ाइल अपलोड फॉर्म बनाना आइए अब समझते हैं कि फ़ाइल अपलोड फॉर्म कैसे बनाया जाता है। निम्न