Я получаю исключение для столбца не найден, даже если столбец существует - PullRequest
0 голосов
/ 24 мая 2018

Я хочу выполнить запрос к базе данных MySQL с помощью Java.Код выглядит следующим образом:

ResultSet resultSet = statement.executeQuery("select col1 from tb1 inner join tb2 on tb1.col2 = tb2.col3 where col4='"+foo+"'");

Запрос отлично работает, когда я использую оболочку, но он не работает, когда я запускаю его с Java, потому что он говорит, что col4 не существует.Но col4 существует.

Я только что попробовал что-то вроде этого;

select col1 from dbname.tb1 as a inner join dbname.tb2 as b on a.col2 = b.col3 where b.col4 = 'foo'

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

Проблем не было.Это было немного дальше:

ResultSet resultSet = statement.executeQuery("select col1 from tb1 inner join tb2 on tb1.col2 = tb2.col3 where col4='"+foo+"'");
myarray.add(resultSet.getString("col4"));//col4 can't exist here because it has not been selected

После выполнения запроса я захотел получить доступ к столбцу, который не был выбран.

0 голосов
/ 24 мая 2018

Вы должны вызвать col4 с префиксом таблицы "tb1" или "tb2".

Как пример: выбрать tb1.col1 из внутреннего соединения tb1 tb2 на tb1.col2 = tb2.col3, где tb1.col4= ...

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