标签: dollar-quoting

什么是'$$'用于PL/pgSQL

作为PL/pgSQL的新手,这个函数中双美元符号的含义是什么:

CREATE OR REPLACE FUNCTION check_phone_number(text)
RETURNS boolean AS $$
BEGIN
  IF NOT $1 ~  e'^\\+\\d{3}\\ \\d{3} \\d{3} \\d{3}$' THEN
    RAISE EXCEPTION 'Wrong formated string "%". Expected format is +999 999';
  END IF;
  RETURN true; 
END;
$$ LANGUAGE plpgsql STRICT IMMUTABLE;
Run Code Online (Sandbox Code Playgroud)

我猜,在RETURNS boolean AS $$,$$是一个占位符.

最后一行有点神秘: $$ LANGUAGE plpgsql STRICT IMMUTABLE;

顺便说一句,最后一行是什么意思?

postgresql quotes plpgsql dollar-sign dollar-quoting

82
推荐指数
2
解决办法
3万
查看次数

“$$”处或附近的未终止的美元引号字符串

我正在尝试使用 DBeaver 声明一些变量并不断遇到此错误。

Unterminated dollar-quoted string at or near "$$

 DO $$
 DECLARE A integer; B integer;

BEGIN   
END$$;
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

sql postgresql dbeaver dollar-quoting

5
推荐指数
2
解决办法
9932
查看次数