Это должно работать, только что проверил:
if ($.request.method === $.net.http.GET) {
const id = $.request.parameters.get('id');
$.response.contentType = "application/json";
const conn = $.hdb.getConnection();
try {
const resultSet = conn.executeQuery('select * from "user_table" where "id" = ?', id);
$.response.setBody(JSON.stringify(resultSet));
$.response.status = $.net.http.OK;
} catch (ex) {
$.response.setBody(ex.toString());
} finally {
if (conn) {
conn.close();
}
}
}
Я думаю, что ваша проблема была в том, что id не было в двойных кавычках ("), это очень важно.
Как видно из соединения hdb , обработка запросов sql становится проще и, надеюсь, еще быстрее, поэтому используйте этот вместо ссылки db - на документацию hdb .
Более того, используйте отладчик для исследования проблемы (я слышал, что есть некоторые проблемы с отладкой файлов xsjs в Eclipse, но я делаю это без проблем в Intellij IDEA). И да, я бы хотелугадайте, что ваш id
уникален, поэтому вы можете / должны получить только одну строку, а затем stringify
только resultSet[0]
.