কম্পিউটার টিউটোরিয়াল

Java-এ MySQL ResultSet থেকে কলাম নাম পাওয়া

রেজাল্ট সেটে কলাম নাম পেতে getMetaData() মেথড ব্যবহার করতে হয়। getMetadata()-র প্রোটোটাইপ নিচে দেওয়া হলো:

ResultSetMetaData getMetaData throws SQLException;

৫টি কলাম নামসহ একটি MySQL টেবিল তৈরি করা যাক। টেবিল তৈরির কোয়েরি:

mysql> create table javagetallcolumnnames  
    -> (  
    -> Id int NOT NULL AUTO_INCREMENT,  
    -> Name varchar(20),  
    -> Age int,  
    -> Salary float,  
    -> Address varchar(100),  
    -> PRIMARY KEY(Id)  
    -> ); Query OK, 0 rows affected (1.34 sec)

রেজাল্ট সেটে কলাম নাম পাওয়ার জাভা কোড নিচে দেওয়া হলো। কোডটি হলো:

import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import com.mysql.jdbc.ResultSetMetaData; public class GetAllColumnNames {     public static void main(String[] args) {         String JdbcURL="jdbc:mysql://localhost:3306/test?useSSL=false";         String Username="root";         String password="123456";         Connection con=null;         Statement stmt=null;         ResultSet rs;         try {             con = DriverManager.getConnection(JdbcURL, Username, password);             stmt=con.createStatement();             rs = stmt.executeQuery("SELECT *FROM javagetallcolumnnames");             ResultSetMetaData md = (ResultSetMetaData) rs.getMetaData();             int counter = md.getColumnCount();             String colName[] = new String[counter];             System.out.println("The column names are as follows:");             for (int loop = 1; loop <= counter; loop++) {                 colName[loop-1] = md.getColumnLabel(loop);                 System.out.println(colName[loop-1]);             }         } catch(Exception e) {             e.printStackTrace();         }     } }

কোডের স্ন্যাপশট নিচে দেওয়া হলো:

Java-এ MySQL ResultSet থেকে কলাম নাম পাওয়া

আউটপুট নিচে দেওয়া হলো:

The column names are as follows: Id Name Age Salary Address

স্যাম্পল আউটপুটের স্ন্যাপশট নিচে দেওয়া হলো:

Java-এ MySQL ResultSet থেকে কলাম নাম পাওয়া

ব্যাখ্যা: JDBC-এ ResultSet.getMetaData() দিয়ে ResultSetMetaData অবজেক্ট পাওয়া যায়। এর getColumnCount() দিয়ে কলাম সংখ্যা, এবং getColumnLabel(i) বা getColumnName(i) দিয়ে প্রতিটি কলামের নাম (১-ভিত্তিক ইন্ডেক্স) পাওয়া যায়। এটি রানটাইমে টেবিল স্কিমা ডাইনামিকলি জানতে বা জেনেরিক কোড লিখতে খুব কাজে লাগে।

  1. Java ব্যবহার করে MySQL ডেটাবেস থেকে ডেটা ডিলিট করা

  2. Java ব্যবহার করে MySQL ডেটাবেসে ডেটা ইনসার্ট করা (JDBC)

  3. MySQL-এ নির্দিষ্ট কলাম নামে টেবিল খুঁজে বের করা

  4. Java-MySQL 연동: 단일 컬럼만 INSERT하기