तैयार विवरण
इसके लिए स्पष्टीकरण पाया जा सकता है अध्याय में अन्य प्रकार के स्थिरांक मैनुअल के :
बोल्ड जोर मेरा।
तैयार बयानों के लिए पैरामीटर वास्तव में स्टिंग लिटरल नहीं हैं लेकिन टाइप किया मान , इसलिए आप फ़ॉर्म का उपयोग नहीं कर सकते type 'string'
. मान को किसी भिन्न प्रकार में डालने के लिए अन्य दो रूपों में से किसी एक का उपयोग करें, जैसे कि आप स्वयं को पहले ही पा चुके हैं।
उदाहरण:
PREPARE foo AS SELECT $1::date;
EXECUTE foo('2005-1-1');
PQexecParams
के समान libpq सी लाइब्रेरी में
दस्तावेज़ीकरण:
विकल्प , जैसा कि ऊपर दिए गए उद्धरण में बताया गया है, संबंधित डेटा प्रकारों के OID को paramTypes[]
के साथ पास करना है - अगर आपको वास्तव में कलाकारों की जरूरत है। ज्यादातर मामलों में पोस्टग्रेज़ को क्वेरी संदर्भ से डेटा प्रकार प्राप्त करने देना ठीक काम करना चाहिए।
आप सिस्टम कैटलॉग से डेटा प्रकारों का OID प्राप्त कर सकते हैं pg_type
:
SELECT oid FROM pg_type WHERE typname = 'date';
आपको सही आंतरिक प्रकार के नाम का उपयोग करना चाहिए। उदाहरण के लिए:int4
integer
. के लिए .
या सुविधानुसार regtype
:
SELECT 'date'::regtype::oid;
यह अधिक लचीला है क्योंकि प्रकार के नाम के लिए ज्ञात उपनाम भी स्वीकार किए जाते हैं। उदाहरण के लिए:int4
, int
या integer
integer
. के लिए ।