Dynamic SQL - 将一个变量和一个字符串连接在一起作为一个 varchar 列

Dynamic SQL - Concatenate a variable and a string together for a varchar column

我正在努力让这段代码工作,不知道如何在 PL/SQL 中做到这一点,比如 T-SQL,我都试过了:

-- input the Application name 
SET CustomRoleName = 'FakeApplicationName';

-- create the base custom roles
create role identifier($CustomRoleName) comment = 'This is ' || $CustomRoleName || ' read-only role';

但出现错误:

Syntax error: unexpected '||. (line 14)

-- input the Application name 
SET CustomRoleName = 'FakeApplicationName';

-- create the base custom roles
create role identifier($CustomRoleName) comment = 'This is ' + $CustomRoleName + ' read-only role';

但出现错误:

Syntax error: unexpected '+'. (line 14)

无法在 Internet 上找到有关在 Snowflake 中为 varchar 列连接变量的任何信息

使用 Snowflake 脚本:

DECLARE
   CustomRoleName    STRING DEFAULT 'FakeApplicationName';
   QUERY        STRING;
BEGIN
   QUERY:= REPLACE(
          'create role <role_name> comment = ''This is <role_name> read-only role'';'
          ,'<role_name>', :CustomRoleName);    

   EXECUTE IMMEDIATE :QUERY;
   
   RETURN :QUERY;
END;

输出(经典UI):