在我的应用程序中,我从用户那里得到一个 SQL 查询,然后我发送到一个数据库。我可以在不解析查询的情况下获取有关 SQL 查询的结果类型的信息吗?我使用纯 JDBC 来执行这些操作。
问问题
532 次
2 回答
2
connection.prepareStatement()
在您的查询中使用,将preparedStatement
返回 a。用它的.getMetaData()
方法。
于 2012-05-14T15:27:46.730 回答
2
是的。您可以使用 aPreparedStatement
并调用其getMetadata
方法,以获得有关ResultSet
它将返回的 s 列的信息。
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();
于 2012-05-14T15:31:04.670 回答