无法在 Redshift Aginity 和 aginity pro 中创建存储过程
Posted
技术标签:
【中文标题】无法在 Redshift Aginity 和 aginity pro 中创建存储过程【英文标题】:Unable to create a Stored procedure in Redshift Aginity and aginity pro 【发布时间】:2019-08-06 12:28:06 【问题描述】:试图在 redshift aginity 工作台中创建存储过程,但它通过一个错误,如“$$ 处或附近的未终止的美元引用字符串” '
在亚马逊,他们已经为此提供了解决方案 https://docs.aws.amazon.com/redshift/latest/dg/stored-procedure-create.html
仅支持创建存储过程的特定客户端工具。 我想符合 aginity 没有创建这个的选项? 和 哪个是创建存储过程的最佳工具?
CREATE OR REPLACE PROCEDURE staging.test_sp1(f1 int, f2 varchar)
AS $$
BEGIN
RAISE INFO 'f1 = %, f2 = %', f1, f2;
END;
$$ LANGUAGE plpgsql;
【问题讨论】:
【参考方案1】:您可以使用 Run Batch 在 Aginity Pro 中创建 RedShift 存储过程。 9/16 版本将提供全面支持。
【讨论】:
欢迎来到***。添加 Run Batch 的链接或示例会增强您的答案。【参考方案2】:Aginity 需要更新他们的工具以正确地将美元引用的程序主体传递给 Redshift。我注意到 Aginity 能够使用CALL staging.test_sp1()
执行该过程。
其他一些工具已经更新为允许创建,您可以随时使用psql
来创建过程。
【讨论】:
你能推荐哪个最适合 Redshift 吗? Aginity 可能很快就会有支持此功能的更新。您还可以尝试以下其他工具:datarow.com、Falcon-plot.ly/free-sql-client-download、sqllectron.github.io、tableplus.com、jetbrains.com/datagrip。价格各不相同,有些是免费的。以上是关于无法在 Redshift Aginity 和 aginity pro 中创建存储过程的主要内容,如果未能解决你的问题,请参考以下文章
Aginity Workbench Redshift 服务器连接错误
Redshift Aginity Workbench - 错误:42703:table_y 中不存在列“XXX”