सबसे पहले, आपको relocatable को बदलना होगा करने के लिए false एक्सटेंशन की नियंत्रण फ़ाइल में।
इसके अलावा, आपको जो सिफारिश मिली है वह आंशिक रूप से उचित और आंशिक रूप से बकवास है।
आपको अपने कार्यों को इस तरह परिभाषित करना चाहिए:
CREATE FUNCTION .... AS
$$ /* function body */ $$
SET search_path = @example@sqldat.com;
फिर search_path pg_catalog . पर स्थिर है , pg_temp और फ़ंक्शन कॉल की अवधि के लिए आपका एक्सटेंशन स्कीमा। इसका मतलब है कि स्पष्ट स्कीमा के बिना ऑब्जेक्ट तक सभी पहुंच केवल इन स्कीमा में ही खोजी जाएगी।
फिर आपको @example@sqldat.com के साथ फंक्शन में हर चीज को स्पष्ट रूप से क्वालिफाई करने के बारे में चिंता करने की जरूरत नहीं है। , और आप बिना किसी चिंता के ऑपरेटरों का उपयोग कर सकते हैं, क्योंकि search_path ऑपरेटरों पर भी लागू होता है। (आप स्कीमा-योग्य ऑपरेटर भी कर सकते हैं:OPERATOR(schema.+) , लेकिन यह स्पष्ट रूप से दर्दनाक है और पठनीयता को हानि पहुँचाता है।)