ОШИБКА: связь не существует

Итак, вот в чем проблема. Я очищаю некоторые данные с помощью java и в конечном итоге помещаю эту java в базу данных postgres. Когда я запускаю программу Java, я получаю ошибку ОШИБКА: отношение «имя таблицы» не существует, но когда я лично пишу тот же запрос в PGAdmin III, он работает нормально. Я погуглил, и у большинства людей проблемы не в заглавных буквах. Вот скриншот:

скриншот


person DaX    schedule 21.03.2016    source источник
comment
Вероятно, вы создали имена таблиц в двойных кавычках, что делает их чувствительными к регистру: postgresql.org/docs/current/static/ Я настоятельно рекомендую воссоздать их без кавычек   -  person a_horse_with_no_name    schedule 21.03.2016
comment
Да, это была проблема, большое вам спасибо !!!   -  person DaX    schedule 21.03.2016


Ответы (1)


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

НЕ ДЕЛАЙТЕ ЭТОГО. Помимо того, что эти проблемы невозможно отладить, вы можете использовать SQL-инъекцию.

При отладке чего-то вроде этого вы должны сначала перенести на использование синтаксиса заполнителя (который поддерживает драйвер JDBC PostgreSQL), а затем, если это не сработает, опубликовать журналы сервера.

person Chris Travers    schedule 22.03.2016