Из того, что я прочитал, эта ошибка означает, что вы неправильно ссылаетесь на имя таблицы. Одной из распространенных причин является то, что таблица определена с помощью написания в смешанном регистре, и вы пытаетесь запросить ее со всеми строчными буквами.
Другими словами, происходит следующее:
CREATE TABLE "SF_Bands" ( ... );
SELECT * FROM sf_bands; -- ERROR!
Используйте двойные кавычки для разделения идентификаторов, чтобы вы могли использовать конкретное написание в смешанном регистре при определении таблицы.
SELECT * FROM "SF_Bands";
В своем комментарии вы можете добавить схему в «search_path», чтобы при обращении к имени таблицы без указания ее схемы запрос совпадал с именем таблицы, проверяя каждую схему по порядку. Также как PATH
в оболочке или include_path
в PHP и т. Д. Вы можете проверить свой текущий путь поиска схемы:
SHOW search_path
"$user",public
Вы можете изменить путь поиска схемы:
SET search_path TO showfinder,public;
См. Также http://www.postgresql.org/docs/8.3/static/ddl-schemas.html