问题:我想测试PostgreSQL中的if语句:
IF (SELECT COUNT(*) FROM pg_language WHERE lanname = 'plpgsql') > 0 THEN
PRINT 'Good'
ELSE
PRINT 'Bad'
END IF;
现在这会在IF处抛出错误 .
据我所知,这是因为我需要使用plpgsql来使用if,print和variables .
到目前为止,我可能还必须使用SELECT而不是print .
在将此语句执行到plpgsql之前,如何切换语言?
我想先测试它,然后我把它放在存储过程中 . 用变量等测试代码
Edit:
解决方法:
DO LANGUAGE plpgsql $$
BEGIN
IF (SELECT COUNT(*) FROM pg_language WHERE lanname = 'plpgsql') > 0 THEN
RAISE NOTICE 'GOOD';
ELSE
RAISE NOTICE 'BAD';
END IF;
END;
$$;
1 回答
如果你只是想测试代码片段而不经历构建和删除函数的所有麻烦,那么你可以使用DO:
您需要9.0才能使用
DO
.