Я пытаюсь запустить встроенный запрос в моей базе данных - которая имеет citext
расширение установленного (с использованием CREATE EXTENSION
) - и все же выполняется запрос продолжает бросать эту ошибку при вызове функции:Установлен дополнительный модуль citext, но тип «citext» не найден?
type "citext" does not exist
DO
LANGUAGE plpgsql
$$
DECLARE
_id INT;
BEGIN
SELECT * FROM "dbo"."MyFunction"(_id, 'some value'::citext);
END;
$$;
Если я опустить ::citext
бросок, он говорит:
function dbo.MyFunction(integer, unknown) does not exist. You might need to add explicit type casts.
Расширение расширения citext
, является частью схемы и работает с другими запросами. Это неудивительно: почему это происходит?
EDIT: Установленные расширения:
extname | nspname
----------+-----------
plpgsql | pg_catalog
citext | public
uuid-ossp | public
путь поиска:
show search_path;
search_path
-----------
dbo
'CITEXT ... является частью schema' - часть какой схеме? Выполнить: 'SELECT e.extname, n.nspname FROM pg_extension e JOIN pg_namespace n ON n.oid = e.extnamespace;' И что вы получаете за 'show search_path'? –
обновленный вопрос, чтобы отразить эту информацию. Интересно отметить, что мне также кажется, что эта проблема пытается использовать uuid_generate_v4() в встроенном запросе. –
oh man .. это может быть специфично для DataGrip 2016 и того, как он инициирует соединения. Я попробовал один и тот же запрос с pgAdmin, а search_path содержит расширения, тогда как в DataGrip он отсутствует. –