কম্পিউটার

JDBC ফলাফল কি? কিভাবে ResultSet অবজেক্ট থেকে ডেটা পুনরুদ্ধার করবেন?


একটি ফলাফল সেট JDBC-তে ইন্টারফেস SQL কোয়েরি দ্বারা উত্পন্ন ট্যাবুলার ডেটা উপস্থাপন করে। এটিতে একটি কার্সার রয়েছে যা বর্তমান সারির দিকে নির্দেশ করে। প্রাথমিকভাবে, এই কার্সারটি প্রথম সারির আগে অবস্থান করে।

JDBC ফলাফল কি? কিভাবে ResultSet অবজেক্ট থেকে ডেটা পুনরুদ্ধার করবেন?

ফলাফল সেট জুড়ে পয়েন্টার সরানো

পরবর্তী() রেজাল্টসেট ইন্টারফেসের পদ্ধতি বর্তমান অবস্থান থেকে বর্তমান (ResultSet) অবজেক্টের পয়েন্টারকে পরবর্তী সারিতে নিয়ে যায়। এই পদ্ধতিটি একটি বুলিয়ান মান প্রদান করে, যদি তার বর্তমান অবস্থানের পাশে কোন সারি না থাকে তবে এটি মিথ্যা প্রদান করে, অন্যথায় এটি সত্য প্রদান করে। অতএব, while লুপে এই পদ্ধতিটি ব্যবহার করে আপনি ফলাফল সেটের বিষয়বস্তু পুনরাবৃত্তি করতে পারেন।

while(rs.next()){
}

প্রতিটি রেকর্ডের কলামের মান পাওয়া:

রেজাল্টসেট ইন্টারফেস (এছাড়াও) সারির প্রতিটি কলামে মান পুনরুদ্ধার করতে গেটার পদ্ধতি (getXXX()) প্রদান করে। প্রতিটি গেটার পদ্ধতির দুটি রূপ রয়েছে:

  • getXXX(int columnIndex): এটি কলামের সূচকের প্রতিনিধিত্বকারী একটি পূর্ণসংখ্যা মান গ্রহণ করে এবং এর মান প্রদান করে।

  • গেটXXX(স্ট্রিং কলাম লেবেল): এটি কলামের নামের প্রতিনিধিত্বকারী একটি স্ট্রিং মান গ্রহণ করে এবং এর মান প্রদান করে।

টেবিলের কলামের ডেটাটাইপের উপর ভিত্তি করে আপনাকে সংশ্লিষ্ট গেটার পদ্ধতি ব্যবহার করতে হবে।

উদাহরণ

অনুমান করুন আমাদের কাছে নীচে দেখানো বিষয়বস্তু সহ ডেটাসেট নামে একটি টেবিল রয়েছে:

+--------------+-----------+
| mobile_brand | unit_sale |
+--------------+-----------+
| Iphone       |      3000 |
| Samsung      |      4000 |
| Nokia        |      5000 |
| Vivo         |      1500 |
| Oppo         |       900 |
| MI           |      6400 |
| MotoG        |      4360 |
| Lenovo       |      4100 |
| RedMi        |      4000 |
| MotoG        |      4360 |
| OnePlus      |      6334 |
+--------------+-----------+

উদাহরণ

নিম্নলিখিত উদাহরণটি ডেটাসেট-এর সমস্ত রেকর্ড পুনরুদ্ধার করে টেবিল এবং ফলাফল প্রিন্ট করে:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class RetrievingData {
   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/TestDB";
      Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");
      System.out.println("Connection established......");

      //Creating a Statement object
      Statement stmt = con.createStatement();
      //Retrieving the data
      ResultSet rs = stmt.executeQuery("select * from Dataset");

      System.out.println("Contents of the table");
      while(rs.next()) {
         System.out.print("Brand: "+rs.getString("Mobile_Brand")+", ");
         System.out.print("Sale: "+rs.getString("Unit_Sale"));
         System.out.println("");
      }
   }
}

আউটপুট

Connection established......
Contents of the table
Brand: Iphone, Sale: 3000
Brand: Samsung, Sale: 4000
Brand: Nokia, Sale: 5000
Brand: Vivo, Sale: 1500
Brand: Oppo, Sale: 900
Brand: MI, Sale: 6400
Brand: MotoG, Sale: 4360
Brand: Lenovo, Sale: 4100
Brand: RedMi, Sale: 4000
Brand: MotoG, Sale: 4360
Brand: OnePlus, Sale: 6334

  1. উইন্ডোজ 10 এ উইন্ডোজ এক্সপি মোড ভিএম থেকে কীভাবে ডেটা পুনরুদ্ধার করবেন

  2. আইফোন থেকে এলজি ট্রান্সফার:কীভাবে আইফোন থেকে এলজিতে ডেটা স্থানান্তর করবেন

  3. ওয়ানপ্লাস থেকে ওয়ানপ্লাসে কীভাবে ডেটা স্থানান্তর করবেন?

  4. হুয়াওয়ে থেকে হুয়াওয়েতে কীভাবে ডেটা স্থানান্তর করবেন