কম্পিউটার

একটি টেবিলে ক্লোব ডেটা টাইপের মান সন্নিবেশ করার জন্য একটি JDBC উদাহরণ লিখুন?


অনুমান করুন আমাদের ইতিমধ্যেই নিম্নলিখিত বিবরণ সহ ডাটাবেসে MyData নামে একটি টেবিল রয়েছে৷

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

আপনি যদি একটি JDBC প্রোগ্রাম ব্যবহার করে ক্লোব ডেটা টাইপে মান int সন্নিবেশ করতে চান তবে আপনাকে সেই পদ্ধতিগুলি ব্যবহার করতে হবে যা একটি ফাইলের বিষয়বস্তু পড়ে এবং ডাটাবেস সারিগুলিতে সেট করে। PreparedStatement ইন্টারফেস এই ধরনের পদ্ধতি প্রদান করে।

অকার্যকর সেটCharacterStream(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)

আপনি এই পদ্ধতিগুলির যেকোনো একটি ব্যবহার করে ক্লোব ডেটা টাইপের মান সেট করতে পারেন।

উদাহরণ

নিম্নলিখিত উদাহরণ সেটক্লব() পদ্ধতি ব্যবহার করে একটি ক্লোব ডেটাটাইপের মান সেট করে।

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

আউটপুট

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

আপনি যদি MySQL ওয়ার্ক বেঞ্চ ব্যবহার করে রেকর্ডে ক্লোব মান দেখার চেষ্টা করেন তবে আপনি নীচে দেখানো টেক্সট ডেটা সন্নিবেশিত দেখতে পারেন:

একটি টেবিলে ক্লোব ডেটা টাইপের মান সন্নিবেশ করার জন্য একটি JDBC উদাহরণ লিখুন?


  1. জাভাতে PreparedStatement ব্যবহার করে একটি MySQL টেবিলে রেকর্ড ঢোকানো হচ্ছে?

  2. একটি টেবিলে ব্লব ডেটাটাইপের মান সন্নিবেশ করার জন্য একটি JDBC উদাহরণ লিখুন?

  3. getCharacterStream() পদ্ধতি ব্যবহার করে একটি টেবিল থেকে Clob মান পুনরুদ্ধার করতে একটি JDBC উদাহরণ লিখুন?

  4. C# এ মুদ্রার জন্য ব্যবহার করার জন্য সেরা ডেটা টাইপ কি?