function - Postgresql:将输入键/值对转储到 PL/pgSQL 中的字符串变量中

标签 function postgresql input parameters plpgsql

我需要找到一种方法来转储 PL/pgSQL 函数输入参数的键/值对:

CREATE OR REPLACE FUNCTION _test(A text, B text)
...
raise info 'Params dump: %', _x;
...

执行时:

select _text('HELLO', 'WORLD');

该函数按如下方式引发信息:

'A = HELLO, B = WORLD'

有没有办法将输入参数键/值对转储到变量中?

最佳答案

如果你能使函数VARIADIC成为可能具有统一的参数类型,并且可以打印数组。您不会获得参数名称,因为它们没有名称,但您确实可以获得参数位置。

否则不,它在 PL/PgSQL 中是不可能的,尽管它应该在其他 PL 中,如 PL/Perl、PL/Python 等。

如果能够获得一个包含所有函数参数的 RECORD 就太好了,这样您就可以打印它,将它提供给 hstore扩展等,但这目前是不可能的。

关于function - Postgresql:将输入键/值对转储到 PL/pgSQL 中的字符串变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12311216/

相关文章:

python - 输入的错误最多为1个参数,为3

c++ - isupper() 是宏还是函数?

sql - 选择没有指针的对象

javascript - 当用户键入不正确的输入值时返回错误消息

postgresql - 无法将 ".sql"文件恢复到 pgadmin4

ruby-on-rails - Seeds.rb 设置主键值,导致重复键错误

javascript - 如何直接显示input的值

python - 仅传递函数参数(如果存在)

c - 下面函数中的表达式是如何计算的?

python - 将字典传递给以元组作为键的函数时生成的关键字错误