ResultSetMetaData দিয়ে কলাম মেটাডেটা এক্সট্র্যাক্ট
JDBC-এ ResultSetMetaData ইন্টারফেস ব্যবহার করে রেজাল্ট সেটের কলাম সংখ্যা, নাম, ডেটা টাইপ ইত্যাদি প্রোগ্রাম্যাটিকলি বের করা যায়।
টেবিল তৈরি
mysql> CREATE TABLE DemoTable (
-> StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> StudentFirstName VARCHAR(20),
-> StudentLastName VARCHAR(20)
-> );
জাভা কোড উদাহরণ
import java.sql.*;
import com.mysql.jdbc.ResultSetMetaData;
public class ResultSetDemo {
public static void main(String[] args) {
Connection con = null;
Statement st = null;
ResultSet rs = null;
try {
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web?useSSL=false", "root", "123456");
String query = "SELECT StudentId, StudentFirstName, StudentLastName FROM DemoTable";
st = con.createStatement();
rs = st.executeQuery(query);
ResultSetMetaData rsmd = (ResultSetMetaData) rs.getMetaData();
int numberOfColumn = rsmd.getColumnCount();
System.out.println("Number Of Columns: " + numberOfColumn);
System.out.println("All Details Of Columns:");
for (int i = 1; i <= numberOfColumn; i++) {
String columnName = rsmd.getColumnName(i);
String dataTypeOfColumn = rsmd.getColumnTypeName(i);
System.out.println(columnName + " has data type " + dataTypeOfColumn);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
আউটপুট
Number Of Columns: 3 All Details Of Columns: StudentId has data type INT StudentFirstName has data type VARCHAR StudentLastName has data type VARCHAR
মূল মেথড: getColumnCount(), getColumnName(int), getColumnTypeName(int)।