जवाबों:
pgAdmin का उपयोग करें या अपनी संग्रहीत प्रक्रियाओं के स्रोत को प्राप्त करने के लिए pg_proc का उपयोग करें। pgAdmin वही करता है।
\df+ <function_name>
में psql ।
\x
psql मेटा-कमांड का उपयोग कर सकते हैं । \x
लंबी स्ट्रिंग्स के साथ रिकॉर्ड वाले क्वेरी परिणामों को देखने के लिए भी उपयोगी है।
\ef <function_name>
psql में। यह संपादन योग्य पाठ के साथ पूरे फ़ंक्शन देगा।
;
<enter>
बफर निष्पादित करने के बाद टाइप करना न भूलें ।
ERROR: more than one function named
SELECT prosrc FROM pg_proc WHERE proname = 'function_name';
यह फ़ंक्शन हैंडलर को फ़ंक्शन को लागू करने का तरीका बताता है। यह कार्यान्वित भाषा / कॉल कन्वेंशन के आधार पर व्याख्या की गई भाषाओं के लिए फ़ंक्शन का वास्तविक स्रोत कोड हो सकता है, एक लिंक प्रतीक, एक फ़ाइल का नाम, या कुछ और भी हो सकता है
psql
। ध्यान दें कि फ़ंक्शन नाम डाउनकेड होने लगते हैं।
SELECT proname, prosrc, proargnames FROM pg_proc WHERE proname like '%func_name%'
:। यह कम से कम Pg 9.6 पर। आप संपत्ति के माध्यम से प्रकार का संख्यात्मक कोड प्राप्त कर सकते हैं proargtypes
, लेकिन आपको इसे नाम के रूप में प्राप्त करने के लिए किसी अन्य तालिका के साथ जुड़ना होगा।
\df
Postgres में सभी संग्रहीत कार्यविधि को सूचीबद्ध करने के लिए उपयोग करें ।
अगर किसी को आश्चर्य है कि कैसे कैटलॉग तालिकाओं को जल्दी से क्वेरी करें और pg_get_functiondef()
यहां फ़ंक्शन का उपयोग नमूना क्वेरी करें:
SELECT n.nspname AS schema
,proname AS fname
,proargnames AS args
,t.typname AS return_type
,d.description
,pg_get_functiondef(p.oid) as definition
-- ,CASE WHEN NOT p.proisagg THEN pg_get_functiondef(p.oid)
-- ELSE 'pg_get_functiondef() can''t be used with aggregate functions'
-- END as definition
FROM pg_proc p
JOIN pg_type t
ON p.prorettype = t.oid
LEFT OUTER
JOIN pg_description d
ON p.oid = d.objoid
LEFT OUTER
JOIN pg_namespace n
ON n.oid = p.pronamespace
WHERE NOT p.proisagg
AND n.nspname~'<$SCHEMA_NAME_PATTERN>'
AND proname~'<$FUNCTION_NAME_PATTERN>'
pg_get_functiondef(p.oid) ilike '%indicator_loss%'
यदि आप इसे अपने सिस्टम में कॉन्फ़िगर कर रहे हैं, तो आप phpPgAdmin से भी प्राप्त कर सकते हैं,
चरण 1: अपने डेटाबेस का चयन करें
स्टेप 2: फाइंड बटन पर क्लिक करें
चरण 3: खोज विकल्प को फ़ंक्शंस में बदलें फिर फाइंड पर क्लिक करें।
आपको परिभाषित कार्यों की सूची मिल जाएगी। आप कार्यों को नाम से भी खोज सकते हैं, आशा है कि यह उत्तर दूसरों की मदद करेगा।
संग्रहीत कार्यविधि / कार्यों में लिखे गए पूर्ण कोड (क्वेरी) को देखने के लिए, कमांड के नीचे उपयोग करें:
sp_helptext procedure/function_name
फ़ंक्शन नाम और प्रक्रिया नाम के लिए उपसर्ग 'dbo' न जोड़ें। या 'सिस।'
प्रक्रिया या फ़ंक्शन नाम के अंत में कोष्ठक न जोड़ें और पैरामीटर भी पास न करें।
sp_helptext कीवर्ड का उपयोग करें और फिर प्रक्रिया / फ़ंक्शन नाम को पास करें।
प्रक्रिया के लिए लिखे गए पूर्ण कोड को देखने के लिए कमांड का उपयोग करें:
sp_helptext ProcedureName
फ़ंक्शन के लिए लिखा गया पूर्ण कोड देखने के लिए नीचे दिए गए आदेश का उपयोग करें:
sp_helptext FunctionName
sp_helptext
Postgresql में कोई भी नहीं है।
सामान्यतया आप pgAdmin जैसे DB प्रबंधक एप्लिकेशन का उपयोग करते हैं , उस वस्तु को ब्राउज़ करें जिसमें आप रुचि रखते हैं, और "स्क्रिप्ट बनाने के लिए अपना रास्ता" या समान क्लिक करें।
क्या आप ऐसा करने की कोशिश कर रहे हैं ... बिना प्रबंधन ऐप के?