我有一個函數,它將文本作爲輸入。 注意參數的最大長度是256. 如何傳遞更長的文本?postgres plpgsql參數文本最大長度
示例代碼:
CREATE FUNCTION Test(nameid text)
.... # do something # ....
我有錯誤,如果長度填充NameID> 256由於\0
不存在於末端。 所以我想postgres truncate(strcat_s
?)的參數。 是否有簡單方式傳遞任意長度的參數文本?
我已經試過varchar(1024)
而不是text
,它不起作用。相同的結果:在256個字符處截斷。
編輯
我使用的組合與SPI庫。 我從C代碼調用plpg函數。 256的錯誤是我的(需要休息)。 我用了一個strcpy_s
256度字符的限制:\ [解決]
的截斷必須發生在其他地方。 「文本」幾乎是無限的(1GB)。請給我們一個完整的例子。你從哪裏得到最大值?參數長度是256? –
請參閱:http://sqlfiddle.com/#!12/15e9c/5返回的值爲500個字符長 –
請將解決方案放入答案中並接受答案(答案完全可以回答自己的問題並接受答案) 。所以很顯然這個問題已經解決了。 –