2015-05-27 3 views
0

Я выполнил запрос выбора в Oracle Sql, который возвращает результат A в первой строке B во второй строке. Тот же запрос в Java (Spring JDBC), который извлекает результат в Collections (resultList). В результирующем списке порядок был отменен. (i.e) B в первой строке и A во второй строке.Ошибка запроса результата запроса Java sql spring

Это было странно, но, чтобы исправить это, я специально использовал Collections.reverse(resultList). (Хотя, это смешная идея!) Пожалуйста, предложите мне причину, почему результат отличается от sql и Java. До сих пор нет никаких проблем, когда Java возвратит список результатов в каком-то другом порядке, я был бы в беде наверняка! Спасибо заранее.

+0

Я не думаю, что вы можете положиться на то, что строки будут возвращены на Java. Вы положили предложение ORDER BY на ваш SQL, и оно не работает? – BretC

+0

Нет, у меня нет необходимости размещать заказ в запросе. Если я добавлю порядок, ожидаемый результат будет неправильным. До сих пор он возвращается только по умолчанию – aarav

ответ

0

Вы не можете избежать использования ORDER BY. В SQL и Java нет концепции по умолчанию. Обычно есть первичный ключ идентификатора, который соответствует порядку вставки, а некоторые JPA используют его по умолчанию, но все же они явно указывают DB, какой порядок используется.

Смежные вопросы