gpt4 book ai didi

java - 从 java 中的自定义查询检索结果集

转载 作者:行者123 更新时间:2023-12-02 11:13:08 24 4
gpt4 key购买 nike

我的问题不是如何从结果集中检索数据,而是关于结果集,它不像我们以前所知道的那样

我会解释:

我的数据库位于远程服务器上,通过 ssh 建立连接,一切正常但问题是我使用结果集从我定义的“queryString”变量获取结果,该变量从前端作为请求获取字符串形式的查询,然后,该查询将使用我定义的方法执行

由于我们事先不知道要从哪个表读取数据以及要检索多少列,所以我不知道如何使此方法适用于每个接收查询

下面是我的代码片段:

    @Override
public SqlQuery exeuteReceivedQuery(String queryString) throws SQLException {
ConnectToDataBase();
Statement st = (Statement) conn.createStatement();
ResultSet rs = st.executeQuery(queryString);
SqlQuery result = null;
while(rs.next()) {
result = new SqlQuery();
result.getQueryResult();
}
return result;
}

// controller
@GetMapping(value = "/{queryString}",produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<SqlQuery> getResults(@PathVariable("queryString") String queryString) throws SQLException {
SqlQuery cmd = sqlService.exeuteReceivedQuery(queryString);
return new ResponseEntity<>(cmd, HttpStatus.OK);
}

你们中有人知道如何做到这一点吗?预先感谢:)

最佳答案

您可以访问结果集的元数据

rs.getMetaData().getColumnCount();

然后

rs.getMetaData().getColumnName(i);

您可以从元数据中获取提取结果所需的所有列、名称、数据类型

关于java - 从 java 中的自定义查询检索结果集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50469077/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com