JDBC-তে ResultSet ইন্টারফেস SQL কোয়েরি থেকে জেনারেট হওয়া টেবুলার ডেটা প্রতিনিধিত্ব করে। এর একটি কার্সর থাকে যা বর্তমান সারিকে নির্দেশ করে। ابتدায় কার্সর প্রথম সারির আগে অবস্থান করে।
next() মেথড ব্যবহার করে কার্সর সরানো যায় এবং ResultSet ইন্টারফেসের গেটার মেথড (getInt(), getString(), getDate() ইত্যাদি) ব্যবহার করে প্রতিটি সারির কলাম মান বের করা যায়।
টেবিল থেকে ডেটা বের করার ধাপসমূহ:
- ডেটাবেসের সাথে কানেক্ট করুন।
- Statement অবজেক্ট তৈরি করুন।
- executeQuery() মেথড ব্যবহার করে Statement এক্সিকিউট করুন। এই মেথডে সিলেক্ট কোয়েরি স্ট্রিং ফরম্যাটে পাস করুন। সব মান বের করতে:
Select * from TableName;
- নির্দিষ্ট কলাম বের করতে কোলামের নামগুলো উল্লেখ করুন:
select Name, DOB from Emp
উদাহরণ
ধরি Emp নামক একটি টেবিল আছে নিচের বিবরণের সাথে:
+----------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+--------------+------+-----+---------+-------+ | Name | varchar(255) | YES | | NULL | | | DOB | date | YES | | NULL | | | Location | varchar(255) | YES | | NULL | | +----------+--------------+------+-----+---------+-------+
নিচের JDBC উদাহরণ Emp টেবিল থেকে Name এবং DOB কলামের মান বের করে।
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class RetrievingParticularColumn {
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 Name, DOB from Emp");
System.out.println("Contents of the table");
while (rs.next()) {
System.out.print("Name of the Employee: " + rs.getString("Name") + ", ");
System.out.print("Date of Birth: " + rs.getDate("DOB"));
System.out.println();
}
}
}
আউটপুট
Connection established...... Contents of the table Name of the Employee: Amit, Date of Birth: 1970-01-08 Name of the Employee: Sumith, Date of Birth: 1970-01-08 Name of the Employee: Sudha, Date of Birth: 1970-01-05