如何在JDBC的ResultSet中获取列数?

您可以使用ResultSetMetaData接口的 getColumnCount() 方法获取 表中的列数。调用时,此方法返回一个整数,该整数表示当前ResultSet对象中表中的列数。

//检索ResultSetMetaData对象

ResultSetMetaData rsmd = rs.getMetaData();

//获取列类型

int column_count = rsmd.getColumnCount();

让我们使用CREATE语句在MySQL数据库中创建一个名为employee_data 的表,如下所示-

CREATE TABLE employee_data(

   id INT,

   Name VARCHAR(255),

   DOB date,

   Location VARCHAR(40)

);

接下来的JDBC程序建立与数据库的连接,检索employee_data 表的ResultSetMetaData 对象,并打印其中的列数。

示例

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.ResultSetMetaData;

import java.sql.Statement;

public class NumberOfColumns {

   public static void main(String args[])throws Exception {

      //注册驱动程序

      DriverManager.registerDriver(new com.mysql.jdbc.Driver());

      //获得连接

      String mysqlUrl = "jdbc:mysql://localhost/mydatabase";

      Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");

      System.out.println("Connection established......");

      //创建一个Statement对象

      Statement stmt = con.createStatement();

      ResultSet rs = stmt.executeQuery("select * from employee_data");

      //检索ResultSetMetaData对象

      ResultSetMetaData rsmd = rs.getMetaData();

      //获取列类型

      int column_count = rsmd.getColumnCount();

      System.out.println("Number of columns in the table : "+column_count);

   }

}

输出结果

Connection established......

Number of columns in the table : 4

以上是 如何在JDBC的ResultSet中获取列数? 的全部内容, 来源链接: utcz.com/z/321835.html

回到顶部