是否可以更改 PostgresQL 函数中的参数名称?

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

我有一个 Postgres 函数定义如下:

CREATE OR REPLACE FUNCTION my_test_function(query_since timestamp) RETURNS TABLE () ...

我可以在不删除函数的情况下将参数名称

query_since
更新为
query_from
吗?

CREATE OR REPLACE FUNCTION

文档清楚地表明我无法使用此SQL命令更改参数类型。虽然它没有具体提及参数名称,但我怀疑同样的限制也适用。

sql postgresql ddl
1个回答
1
投票

检查手册:事实上,它确实在 Description 部分提到了对参数名称的相同限制

要替换现有函数的当前定义,请使用

CREATE OR REPLACE FUNCTION
无法更改名称或 这样函数的参数类型(如果你尝试过,你会 实际上是在创建一个新的、独特的功能)。

我的粗体强调。

无论哪种方式,由于您可以在 PL/pgSQL 或 SQL 函数中引用函数体内的参数(参数)名称,因此简单地重命名通常不是一个明智的选择。

© www.soinside.com 2019 - 2024. All rights reserved.