Первый, так как вы, кажется, знакомы с Stackoverflow, вот несколько этикета, а также размещение советов:
- Всегда включайте соответствующую информацию о версии. Вот, вы, вероятно, хотите включить в PostgreSQL информации о версии
- Дайте краткое, краткое описание того, что вы хотите сделать
- Включите любой соответствующие исходный код (который вы сделали ... хорошую работу)
- Включите любые ошибки (который вы сделали ... снова, хорошая работа)
- Объясните, что вы хотите, чтобы результат был
- Последуйте и отметьте ответ. Для многих людей, если вы не отдаете должное за правильный ответ, они вам не помогут. Просто подсказка.
Поскольку вы не делали все вышеперечисленное, я угадал, поэтому я делаю некоторые предположения на основе вашего кода. Похоже, вы хотите вернуть текст «да», если существует схема и «нет», если схема отсутствует. Если это не ваше желание, пожалуйста, обновите вопрос. Если все правильно, то кажется, что должно работать для вас:
CREATE OR REPLACE FUNCTION chkfunction2(schemaname text)
RETURNS text AS
$BODY$
DECLARE
BEGIN
PERFORM schema_name FROM information_schema.schemata WHERE schema_name = $1;
IF FOUND THEN
RETURN 'yes';
ELSE
RETURN 'no';
END IF;
END;
$BODY$
LANGUAGE plpgsql
Примечание: Я не вижу никакой необходимости в дополнительных переменных или декларирует, поэтому я оставил их. Также обратите внимание, что мое решение разрабатывалось и тестировалось с помощью PostgreSQL 9.1
Добро пожаловать в StackOverflow!
sir Спасибо за советы, я буду иметь в виду, 1. Я проверяю, есть ли имя схемы и имя таблицы в табе данных. 2. имя схемы и таблицы передается как параметры, также, если они отсутствуют, я хочу создать новую схему и таблицу из переданного параметра и th eresult подзаголовка – Anusha
@Anusha Я рекомендую вам отредактировать вопрос включить эту информацию. –