如何从 JDBC 结果集中获取列数?

2022-08-31 10:30:18

我正在使用CsvJdbc(它是csv文件的JDBC驱动程序)来访问csv文件。我不知道csv文件包含多少列。如何获取列数?有没有JDBC函数?我在java.sql.ResultSet中找不到任何方法。

为了访问该文件,我使用类似于CsvJdbc网站上的示例的代码。


答案 1

您可以从 ResultSetMetaData 获取列号:

Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(query);
ResultSetMetaData rsmd = rs.getMetaData();

int columnsNumber = rsmd.getColumnCount();

答案 2
PreparedStatement ps=con.prepareStatement("select * from stud");

ResultSet rs=ps.executeQuery();

ResultSetMetaData rsmd=rs.getMetaData();

System.out.println("columns: "+rsmd.getColumnCount());  
System.out.println("Column Name of 1st column: "+rsmd.getColumnName(1));  
System.out.println("Column Type Name of 1st column: "+rsmd.getColumnTypeName(1));