Что не так со следующим запросом JDBC / MySQL - PullRequest
0 голосов
/ 07 февраля 2012

Следующий фрагмент кода не может ничего вернуть в ResultSet

PreparedStatement ps = con.prepareStatement   ("select images.id from images,testruns where images.test= ? and images.id=testruns.image_id");
ps.setString(1,value);
ResultSet rs = ps.executeQuery();

Однако, если я жестко закодирую значение images.test в 1, как в

 "select images.id from images,testruns where images.test=1 and images.id=testruns.image_id"

, я получу ожидаемый результатодной строки возвращено.

Любые идеи о том, как решить эту проблему, будут высоко оценены.

Ответы [ 3 ]

5 голосов
/ 08 февраля 2012

Вы задаете параметр запроса в виде строки, но запрос указывает, что это действительно должно быть целое число.

4 голосов
/ 08 февраля 2012

Изменить код на

ps.setInt(1,value);
1 голос
/ 08 февраля 2012

Не используйте setString, если ваше поле не является строкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...