यदि आप पोस्टग्रेज़ के पुराने पुराने संस्करण पर काम कर रहे हैं, जिसके लिए pg_get_function_identity_arguments (func_oid) मौजूद नहीं है, तो मैं अपना स्वयं का फ़ंक्शन समानता प्राप्त करता हूं फ़ंक्शन से टियर, आपको केवल फ़ंक्शन के लिए ओड पास करने की आवश्यकता है, आपको नीचे दिए गए फ़ंक्शन को अपने पोस्टग्रेस डीबी पर तैनात करने की आवश्यकता है।
CREATE OR REPLACE FUNCTION public.getFunctionParameter(functionOid oid)
RETURNS text AS
$BODY$
declare
t_paras text;
paras oid[];
res text :='(';
begin
select proargtypes into t_paras from pg_proc where oid=functionOid;
if t_paras is null or t_paras='' then
return '()';
else
paras:=string_to_array(t_paras,' ');
for i in array_lower(paras,1) .. array_upper(paras,1)
loop
raise notice 'para is %',paras[i];
select format_type(paras[i]::oid,NULL) into t_paras;
res:=res||t_paras||',';
end loop;
res:=substring(res from 1 for char_length(res)-1);
res:=res||')';
return res;
end if;
end
$BODY$
LANGUAGE plpgsql ;
समारोह नीचे समारोह नाम और पैरामीटर सूची जाएगा, स्कीमा का नाम बदलने के लिए, मैं उदाहरण
SELECT n.nspname||'.'||p.proname||public.getFunctionParameter(p.oid)
FROM pg_proc p JOIN pg_namespace n ON n.oid = p.pronamespace
WHERE n.nspname='public'
आप परिणाम होगा के लिए सार्वजनिक उपयोग कर रहा हूँ कुछ अन्य स्कीमा के तहत समारोह प्राप्त करना चाहते हैं, तो
1 "public.getfunctionparameter(integer,text)"
2 "public.getfunctionparameter(oid)"
पीजीएडमिन के माध्यम से फ़ंक्शन को देखें। –
'\ df name' के अंदर [' psql'] (http: //www.postgresql।org/docs/वर्तमान/स्थिर/एप्लिकेशन-psql.html)। –