Я выполнил следующий оператор create с использованием SQLWorkbench в моей целевой базе данных postgresql:
CREATE TABLE Config (
id serial PRIMARY KEY,
pub_ip_range_low varchar(100),
pub_ip_range_high varchar(100)
);
Сразу после создания таблицы я запрашиваю содержимое таблицы, набрав «select * from config;»и посмотреть, что таблица может быть получена.Тем не менее, моя java-программа, использующая драйвер JDBC типа 4, не может получить доступ к таблице, когда я выполняю в ней тот же оператор выбора.Когда программа пытается получить к ней доступ, возникает исключение, которое говорит «неопределенное отношение» для таблицы конфигурации.
Мои вопросы:
- Почему sqlworkbench, где я ранее запускалоператор create распознает таблицу, в то время как моя Java-программа не может ее найти?
- Куда СУБД postgressql помещает созданные мной таблицы?Я не вижу их ни в общедоступных, ни в информационных схемах.
ПРИМЕЧАНИЕ. Я проверил целевую базу данных postgres и нигде не вижу таблицы Config, хотя рабочая среда SQL может запросить ее.Затем я открыл еще один экземпляр SQL Workbench и заметил, что таблица не может быть запрошена (то есть не найдена).Итак, мой вывод заключается в том, что PostgreSQL помещает таблицу, которую я создал в первом запущенном экземпляре SQLBench, в некое кровавое место, связанное с этим сеансом.Другой экземпляр SQL Workbench или моя Java-программа не привязаны к сеансу, поэтому не могут запрашивать ранее созданную конфигурацию таблицы.