是否可以将内置函数作为参数传递给触发器?

问题描述 投票:0回答:2

鉴于以下触发此错误的原因,我问了这个问题:

ERROR: syntax error at or near "("
LINE 5: ...cessBlogPostApproval"('Blog Post Approval', concat('Your blo...
^

有关的触发器:

CREATE TRIGGER "processBlogPostApproval_AFTER_INSERT"
    AFTER INSERT
    ON public."ApprovedBlogPosts"
    FOR EACH ROW
    EXECUTE PROCEDURE public."processBlogPostApproval"('Blog Post Approval', concat('Your blog post, "', SELECT "Title" FROM public."BlogPosts" WHERE "PostID" == NEW."PostID", '"has been approved.'));

该问题似乎是由于我将连接函数作为第二个参数,或者是我没有正确地传递它而引起的。非常感谢您的协助,以找出这两个问题的原因。

sql database postgresql database-trigger
2个回答
0
投票
我认为您可以完全避免使用“”:

EXECUTE PROCEDURE public.processBlogPostApproval('Blog Post Approval', concat('Your blog post, "', (SELECT Title FROM public.BlogPosts WHERE PostID == NEW.PostID), '" has been approved.'));


0
投票
© www.soinside.com 2019 - 2024. All rights reserved.