PostgreSQL में "डेटाबेस_नाम" कमांड का प्रयोग करें




postgresql-9.1 (3)

MySQL से माइग्रेट करते समय मूल समस्या का सामना करना पड़ा, मैंने database शब्द को पोस्टग्रेएसक्यूएल में भी समान माना, लेकिन ऐसा नहीं है। तो अगर हम अपने आवेदन या pgAdmin से डेटाबेस स्विच करने जा रहे हैं, तो परिणाम अपेक्षित नहीं होगा। मेरे मामले में, हमारे पास अलग-अलग स्कीमा हैं (यहां पोस्टग्रेएसक्यूएल शब्दावली को ध्यान में रखते हुए।) प्रत्येक ग्राहक और अलग-अलग व्यवस्थापक स्कीमा के लिए। तो आवेदन में, मुझे schemas के बीच स्विच करना है।

इसके लिए, हम SET search_path कमांड का उपयोग कर सकते हैं। यह मौजूदा स्कीमा को मौजूदा सत्र के लिए निर्दिष्ट स्कीमा नाम पर स्विच करता है।

उदाहरण:

SET search_path = different_schema_name;

यह सत्र के लिए निर्दिष्ट स्कीमा में current_schema को बदलता है। इसे स्थायी रूप से बदलने के लिए, हमें postgresql.conf फ़ाइल में परिवर्तन करना होगा।

मैं PostgreSQL के लिए शुरुआत कर रहा हूँ।

मैं पोस्टग्रेज़ के क्वेरी एडिटर से दूसरे डेटाबेस से कनेक्ट करना चाहता हूं - जैसे MySQL या MS SQL सर्वर के USE कमांड।

मैंने इंटरनेट खोजकर \c databasename पाया, लेकिन यह केवल psql पर चलता है। जब मैं PostgreSQL क्वेरी संपादक से इसे आज़माता हूं तो मुझे एक वाक्यविन्यास त्रुटि मिलती है।

मुझे pgscripting द्वारा डेटाबेस को बदलना है। क्या कोई जानता है इसे कैसे करना है?


PgAdmin में आप भी उपयोग कर सकते हैं

SET search_path your_db_name पर;


जब आप PostgreSQL से कनेक्शन प्राप्त करते हैं तो यह हमेशा एक विशेष डेटाबेस के लिए होता है। एक अलग डेटाबेस तक पहुंचने के लिए, आपको एक नया कनेक्शन प्राप्त करना होगा।

Psql में \c का उपयोग पुराने कनेक्शन को बंद करता है और निर्दिष्ट डेटाबेस और / या क्रेडेंशियल्स का उपयोग करके एक नया प्राप्त करता है। आपको एक पूरी नई बैक-एंड प्रक्रिया और सबकुछ मिलता है।





postgresql-9.1