PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

PostgreSQL को मेरी अच्छी तरह से स्वरूपित SQL परिभाषाओं को बदलने से कैसे रोकें

यह एक गलतफहमी है। Postgres "प्रारूप में परिवर्तन" नहीं करता है। मूल SQL स्ट्रिंग अभी संग्रहीत नहीं है बिल्कुल

क्वेरी को पार्स किया जाता है और फिर से लिखा जाता है और क्वेरी के प्रकार के आधार पर कार्रवाई की जाती है। उदाहरण के लिए , जब आप दृश्य . बनाते हैं , परिणाम सिस्टम कैटलॉग में संग्रहीत किए जाते हैं, ज्यादातर pg_class और pg_rewrite

आपको यह भी पता होना चाहिए कि सभी पहचानकर्ताओं को डेटाबेस ऑब्जेक्ट के निर्माण के समय हल किया जाता है, वर्तमान search_path और खाते में दृश्यता (प्रारंभिक बाध्यकारी)। यदि परिवेश किसी भी तरह से बदलता है, तो उसी क्वेरी स्ट्रिंग का अर्थ बाद में कुछ अलग हो सकता है।

जो आप बाद में देखते हैं वह एक पुन:इंजीनियर . है इन प्रविष्टियों से निर्मित संस्करण। कुछ अंतर्निहित कार्य हैं ए> इसमें मदद करने के लिए, लेकिन यह काफी हद तक क्लाइंट पर निर्भर करता है कि रिवर्स-इंजीनियर SQL कोड को कैसे फ़ॉर्मेट किया जाए।

कार्य अपवाद हैं (आंशिक रूप से)। फ़ंक्शन बॉडी को स्ट्रिंग के रूप में पास किया जाता है और जैसा है . सहेजा जाता है , जैसा कि पारित किया गया है, (वर्तमान में) केवल सतही वाक्यविन्यास परीक्षण और वस्तुओं के सत्यापन के साथ। यदि आप किसी क्वेरी को पोस्टग्रेज़ के अंदर उसके स्वरूप सहित "सेव" करने का एक त्वरित तरीका चाहते हैं, तो आप उदाहरण के लिए PL/pgSQL फ़ंक्शन का उपयोग कर सकते हैं।

सामान्य तरीका यह है कि @Mike पहले से ही सुझाए गए जैसे एक स्वतंत्र कोड रिपॉजिटरी हो। - या प्रारूप की बहुत अधिक परवाह न करें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. चयन में बूलियन मान को TRUE या FALSE के रूप में लौटाएं (PostgreSQL/pgAdmin)

  2. पोस्टग्रेज - jsonb ऐरे से एलिमेंट हटाएं

  3. पोस्टग्रेज़ पढ़ने की पहुँच के लिए CSV फ़ाइल नहीं खोल सकते:अनुमति अस्वीकृत

  4. postgresql में स्पष्ट लेनदेन अलगाव उल्लंघन

  5. मैं PostgreSQL के साथ पासवर्ड कैसे एन्क्रिप्ट करूं?