我正在使用 JDBC-ODBC DSN-less 连接来连接到 ms-excel 文件。我能够使用表单查询来查询excel文件
SELECT * FROM [Sheet1$]
但是,这需要我知道 Excel 文件中工作表的名称(可能并不总是 Sheet1)。有什么方法可以查询 excel 以始终点击它的第一张纸?
采用:
DatabaseMetaData meta = con.getMetaData();
con 是你的连接。在元对象上,您可以调用:
getSchema();
getTables(null, null, "%", null); // thanks to AVD
这两种方法都返回 ResultSet,您可以在其上进行迭代以查看里面的内容。无法保证 getTables() 方法将返回完整数据。
也许我引用了错误的方法,但我相信您可以在DatabaseMetaData类中找到一些方法,这些方法会在 excel 的情况下返回您需要的内容。