postgres plpgsql参数文本最大长度

时间:2013-01-18 14:35:44

标签: c postgresql plpgsql

我有一个将文本作为输入的函数。 请注意,参数最大长度为256。 我怎样才能传递更长的文字?

示例代码:

CREATE FUNCTION Test(nameid text)
.... # do something # ....

如果长度为nameid>我有错误256因为\0最后没有出现。 所以我想postgres截断(strcat_s?)参数。 是否有简单方式传递任意长度的参数文本?

我已经尝试varchar(1024)而不是text而且它无效。相同的结果:截断为256个字符。

修改

我正在与 SPI lib结合使用。 我从C代码调用plpg函数。 256的错误是我的(需要休息)。 我使用了strcpy_s 256个字符限制:\ [已解决]

1 个答案:

答案 0 :(得分:-1)

在Postgresql中创建函数时,您只需指定“字符变化”与使用“text”作为文本参数相同,您应该能够使用超过256个字符...

例如:

CREATE OR REPLACE FUNCTION aaa.function_name(integer, character varying)
RETURNS refcursor AS...

此致