JDBC 中的 ResultSetMetaData 是什么?它有什么意义?
jdbcjava 8mysqlmysqli database
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://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"); 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