SQL 响应类型



在我的应用程序中,我从用户那里获得SQL查询,然后发送到数据库。是否可以在不分析查询的情况下获取有关 SQL 查询的结果类型的信息?我使用纯 JDBC 来执行这些操作。

是的。您可以使用 PreparedStatement 并调用其 getMetadata 方法,以便获得有关它将返回的ResultSet列的信息。

http://docs.oracle.com/javase/6/docs/api/java/sql/PreparedStatement.html#getMetaData()

Connection conn = ...
PreparedStatement ps = conn.prepareStatement(yourStatement);
ResultSetMetadata metadata = ps.getMetadata(); // this is what you need
...
// now you can execute the query
ResultSet rs = ps.executeQuery();

在查询中使用connection.prepareStatement(),返回一个preparedStatement。使用其.getMetaData()方法。

最新更新