У меня есть следующий код, где я пытаюсь получить целое число:
woID = (Integer) this.em.createNativeQuery("SELECT fk_workorderid FROM manufacturing.workorders_todos WHERE fk_todoid = ?1")
.setParameter(1, todoID)
.getResultList()
.stream()
.findFirst()
.orElse(null);
LOGGER.debug("After native query Todo ID: "+todoID+" / WO ID: "+woID);
В журналах это то, что я вижу:
2018-09-2511: 45: 25,691 https-jsse-nio-8493-exec-8 DEBUG hibernate.SQL - ВЫБРАТЬ fk_workorderid FROM manufacturing.workorders_todos ГДЕ fk_todoid =?
2018-09-25 11: 45: 25,691 https-jsse-nio-8493-exec-8 Загрузчик DEBUG. Загрузчик - bindNamedParameters () 102754 -> 1 [1]
2018-09-25 11: 45: 25,691 https-jsse-nio-8493-exec-8TRACE sql.BasicBinder - параметр привязки [1] как [INTEGER] - [102754]
2018-09-25 11: 45: 25,691 https-jsse-nio-8493-exec-8 Производство отладки.После нативного запроса Todo ID: 102754 / WO ID: null
Однако, если я возьму SQL и поместу его в MySQL Workbench, то получу ожидаемый результат для woID.Что плохого в том, что собственный запрос всегда возвращает ноль?