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

कैसे जांचें कि PostgreSQL सार्वजनिक स्कीमा मौजूद है या नहीं?

information_schema.schemata . से जानकारी यह उस भूमिका पर निर्भर करता है जिससे आप जुड़े हुए हैं, इसलिए सामान्य रूप से स्कीमा खोजने के लिए क्वेरी करना वास्तव में सही दृश्य नहीं है।

दस्तावेज़ information_schema.schemata पर 9.3 में कहते हैं:

हालाँकि यह केवल उस वाक्य से बिल्कुल स्पष्ट नहीं है (कम से कम मेरे लिए), आप public क्यों नहीं देख सकते हैं ।

मेलिंग-लिस्ट पोस्ट में, टॉम लेन ने एक स्पष्टीकरण दिया है जो थोड़ा और आगे जाता है:
देखें http://www.postgresql.org/message-id/[email protected]

उनका निष्कर्ष:

जो बिल्कुल इस प्रश्न में समस्या की तरह दिखता है।

निचला रेखा:pg_namespace का उपयोग करें information_schema.schemata . के बजाय

उपयोगकर्ताओं की अपेक्षा के अनुरूप इसे संस्करण 9.4 में संशोधित किया गया था। वर्तमान दस्तावेज़ कहते हैं:

USAGE स्कीमा पर विशेषाधिकार अब इसे इस दृश्य से प्राप्त करने के लिए पर्याप्त है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. माइग्रेशन चलाते समय त्रुटि:sqlalchemy.exc.CompileError:Postgresql ENUM प्रकार के लिए एक नाम की आवश्यकता होती है

  2. Elasticsearch के साथ Django घास का ढेर सूचकांक का पुनर्निर्माण करते समय डेटाबेस नहीं ढूँढ सकता

  3. पोस्टग्रेज में व्याख्या विश्लेषण से परिणामों की व्याख्या करना

  4. टाइमस्टैम्प और पूर्णांक प्रकार के दो कॉलम कैसे जोड़ें

  5. SQLAlchemy और कई प्रक्रियाओं के साथ कनेक्शन की समस्या