JDBC 中的 ResultSetMetaData 是什么?它的意义是什么?


ResultSetMetaData 提供有关获得的 ResultSet 对象的信息,例如列数、列名、列的数据类型、表名等。

以下是 ResultSetMetaData 类的部分方法。

方法说明
getColumnCount()检索当前 ResultSet 对象中的列数。
getColumnLabel()检索用于建议使用的列名称。
getColumnName()检索列的名称。
getTableName()检索表的名称。

示例

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
public class ResultSetMetadataExample {
   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://127.0.0.1/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");
      ResultSetMetaData rsMetaData = rs.getMetaData();
      //Number of columns
      System.out.println("Number of columns: "+rsMetaData.getColumnCount());
      //Column label
      System.out.println("Column Label: "+rsMetaData.getColumnLabel(1));
      //Column name
      System.out.println("Column Name: "+rsMetaData.getColumnName(1));
      //Number of columns
      System.out.println("Table Name: "+rsMetaData.getTableName(1));
   }
}

输出

Connection established......
Number of columns: 2
Column Label: mobile_brand
Column Name: mobile_brand
Table Name: dataset

更新时间:2019-07-30

5 千+ 浏览

开启你的 职业生涯

完成课程获得认证

开始学习
广告