ধরি ডেটাবেসে MyData নামক একটি টেবিল আছে নিচের বিবরণের সাথে।
+---------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+--------------+------+-----+---------+-------+ | Name | varchar(255) | YES | | NULL | | | Article | longtext | YES | | NULL | | +---------+--------------+------+-----+---------+-------+
JDBC প্রোগ্রাম ব্যবহার করে clob ডেটা টাইপে মান ইনসার্ট করতে ফাইলের কনটেন্ট পড়ে ডেটাবেস রোতে সেট করার মেথড ব্যবহার করতে হয়। PreparedStatement ইন্টারফেস এমন মেথডগুলো দিয়ে থাকে।
void setCharacterStream(int parameterIndex, Reader reader) মেথড রিডার অবজেক্টের কনটেন্টকে নির্দিষ্ট ইনডেক্সের প্যারামিটারের মান হিসেবে সেট করে। এই মেথডের অন্যান্য ভেরিয়েন্ট:
void setCharacterStream(int parameterIndex, Reader reader, int length)
void setCharacterStream(int parameterIndex, Reader reader, long length)
void setClob(int parameterIndex, Clob x) মেথড দেওয়া java.sql.Clob অবজেক্টকে নির্দিষ্ট ইনডেক্সের প্যারামিটারের মান হিসেবে সেট করে। অন্যান্য ভেরিয়েন্ট:
void setClob(int parameterIndex, Reader reader)
void setClob(int parameterIndex, Reader reader, long length)
এই মেথডগুলোতে যেকোনো একটি ব্যবহার করে Clob ডেটা টাইপে মান সেট করা যায়।
উদাহরণ
নিচের উদাহরণ setClob() মেথড ব্যবহার করে Clob ডেটা টাইপে মান সেট করে।
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 {
// ড্রাইভার রেজিস্টার
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......");
// মান ইনসার্ট
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");
}
}
আউটপুট
Connection established...... Table Created...... Contents of the table are: JavaFX E:\images\MyData_clob_output1.txt
MySQL Workbench-এ clob ভ্যালু দেখতে চাইলে ইনসার্ট করা টেক্সট ডেটা দেখা যাবে।
