2011-12-28 26 views
6

मैं ब्राउज़र में phpPgAdmin और विंडोज के लिए PgAdmin III का उपयोग कर रहा हूं। क्या पूरे डेटाबेस के लिए टेबल संरचना का प्रिंटआउट लेने के लिए वैसे भी है?postgresql से तालिका संरचना को मुद्रित करने के लिए कैसे?

उत्तर

6

डेटाबेस स्कीमा निर्यात के मानक तरीका pg_dump है:

#!/bin/sh 
pg_dump --schema-only MYDBNAME > output-file.sql 

sligtly बेहतर तरीका pg_restore सूची को छानने के साथ pg_dump को जोड़ती है:

#!/bin/sh 
dump=`mktemp` 
list=`mktemp` 
pg_dump --schema-only MYDBNAME -Fc -f $dump 
pg_restore -l $dump | grep ' TABLE ' > $list 
pg_restore -L $list $dump > output-file.sql 
rm $list $dump 

आप जीयूआई जादूगर पसंद करते हैं, pg_dump आदेश में उत्पन्न किया जा सकता PgAdmin III:

  • ri ght ऑब्जेक्ट ब्राउज़र में डेटाबेस पर क्लिक करें, "बैकअप"
  • गंतव्य फ़ाइल नाम का चयन करें (सामान्य एक्सटेंशन .sql या .txt)
  • "सादा" प्रारूप चुनें। (जो है, पाठ स्वरूप)
  • "विकल्प # 1 डंप" टैब, टिकटिक "केवल स्कीमा"
  • क्लिक "बैकअप"

नोट पर

  • : परिणामी फ़ाइल न केवल तालिकाओं होगा, लेकिन यह भी अन्य सभी वस्तुओं (विचार, कार्य, आदि)। यदि आपको केवल न्यूनतम प्रिंटआउट की आवश्यकता है, तो आप इस फ़ाइल को टेक्स्ट एडिटर में संपादित कर सकते हैं और अनियंत्रित सामान को हटा सकते हैं। केवल "टाइप: टेबल;" छोड़ें आइटम नहीं है।

  • +0

    यह 'pg_dump' नहीं होना चाहिए 'psql' –

    +0

    thx @ a-horse-with-no-name, – filiprem

    +0

    सही ढंग से ग्रेड कोड से बचने के लिए' '' का उपयोग करें। – ben

    1

    आप उन्हें एक समय में एक कर सकते हैं जब आपको उनकी आवश्यकता होती है। PgAdminIII में किसी तालिका पर राइट क्लिक करें, रिपोर्ट पर जाएं और "डेटा डिक्शनरी रिपोर्ट" चुनें।

    आउटपुट प्रारूप के लिए, "एक्सएचटीएमएल 1.0 संक्रमणकालीन" का चयन करें, "डिफ़ॉल्ट स्टाइलशीट एम्बेड करें" विकल्प चुनें, इसे एक फ़ाइल नाम दें और ठीक क्लिक करें।

    अपने ब्राउज़र में एक्सएमएल फ़ाइल खोलें और प्रिंट करें।

    +0

    डेटा के साथ कैसे? –

    +0

    क्या स्कीमा के भीतर सभी तालिकाओं पर pgAdminIII "डेटा शब्दकोश रिपोर्ट" के समतुल्य चलाने के लिए कोई प्रोग्रामेटिक तरीका है? – pdog

    3

    यदि आप विंडोज और पीजीएडमिन पर हैं, तो आपको C:\Program files\postgresql\<version>\bin\psql में कहीं भी psql होना चाहिए।

    भागो psql और फिर आप \d जो सभी टेबल्स और सूचियों और \d <table_name> जो आप के बारे में एक मेज विवरण देता है प्रिंट की है।

    संबंधित मुद्दे