我想一次创建一个函数,并使其在帐户中的所有位置都可用。
我不想在所有用法中都指定标准名称。
我不想在每个数据库中,也可能在每个架构中创建它。
理想情况下,无需指定数据库/架构即可在整个帐户中对其进行访问。
例如,假设我想要一个不区分大小写的包含在任何地方都可用的函数。
CREATE OR REPLACE FUNCTION udf_icontains(val varchar, search_pattern varchar)
RETURNS BOOLEAN
AS
$$
contains(lower(val), lower(search_pattern))
$$;
似乎我必须在每个数据库和每个架构上创建它,以便在没有FQN的情况下进行引用。
答案 0 :(得分:1)
您可以在单个数据库和架构中创建它,授予公共访问权限,然后在任何地方使用其完全限定的名称(db.schema.udf ...)在查询中引用它。