PostgreSQL中的条件处理

时间:2016-09-09 12:01:13

标签: postgresql

我可以在PostgreSQL中执行以下操作:

WHEN (my_session <> admin)
   CREATE OR REPLACE FUNCTION testing123 () RETURNS VOID AS
   ....



   ...
   //end of function here

换句话说,如果my_session <> adminTRUE,则会创建该函数。

1 个答案:

答案 0 :(得分:1)

使用DO语句,如下所示:

DO
$$DECLARE
   issuper boolean;
BEGIN
   /* check if current user is superuser */
   SELECT usesuper INTO issuper
      FROM pg_catalog.pg_user
      WHERE usename = CURRENT_USER;
   IF issuper THEN
      CREATE OR REPLACE FUNCTION testing123() RETURNS void AS ...;
   END IF;
END;$$;