我试图在InformaticaMap中的源限定符的前SQL或后SQL中执行匿名PostgreSQL PL/SQL块。PostgreSQL PL/SQL块在“do”和“end”关键字后需要$$或$$。
在pre-sql中与匿名PostgreSQL PL/SQL块的Map如下所示:
do $$
begin
raise notice '>>>>>>>>>>>>>>>>>>Test Proc';
end $$;
字符串
失败,并出现以下错误:
Database driver error...
CMN_1022 [do $$
begin
raise notice '>>>>>>>>>>>>>>>>>>Test Proc'
FnName: Execute Direct -- [Informatica][ODBC PostgreSQL Wire Protocol driver][PostgreSQL]ERROR: VERROR; unterminated dollar-quoted string at or near "$$
begin
raise notice '>>>>>>>>>>>>>>>>>>Test Proc'"(Position 4; File scan.l; Line 1236; Routine scanner_yyerror; ), SQLSTATE [37000]
]
型
我尝试了另一种形式,将文本放在$字符之间,但得到了同样的错误。我认为它将'$'解释为InformaticaMap参数,但它不是。我尝试了转义字符,单引号,双引号等,但无法正常工作。如果没有必要,我宁愿不将其作为存储过程来执行。
有什么想法吗?
1条答案
按热度按时间cuxqih211#
看起来这是解决方案.
字符串
此处也引用ERROR: unterminated dollar-quoted string at or near "$BODY$