Postgresql के साथ डेटाबेस टेबल आरेख उत्पन्न करने के लिए उपकरण? [बन्द है]


172

क्या Postgresql के साथ टेबल आरेख उत्पन्न करने के लिए कोई मुफ़्त उपकरण हैं?


6
चूंकि यह प्रश्न बंद हो गया, मैंने सॉफ्टवेयर की सिफारिश पर एसई से पूछा: पोस्टग्रेक्यूएल डेटाबेस से डेटाबेस टेबल आरेख उत्पन्न करें
फ्रेंक डर्नोनकोर्ट

जवाबों:


184

मुझे स्कीमा विज़ुअलाइज़ेशन के लिए स्कीमासी पसंद है । वे जो नमूना उत्पादन प्रदान करते हैं, और ड्रॉल देखें। नोट नोट करें!

आपको यहां JDBC ड्राइवर डाउनलोड करना होगा , फिर आपकी कमांड कुछ इस तरह दिखनी चाहिए:

java -jar schemaspy-6.0.0-rc2.jar -t pgsql -db database_name -host myhost -u username -p password -o ./schemaspy -dp postgresql-9.3-1100.jdbc3.jar -s public -noads

-portयदि आपके डेटाबेस में अलग-अलग पोर्ट हैं, तो कभी-कभी विकल्पों का उपयोग करना काम नहीं करेगा, इसलिए आपको होस्ट पैरामीटर के बाद मैनुअल पोर्ट को जोड़ना होगा, उदाहरण के लिए:

java -jar schemaspy-6.0.0-rc2.jar -t pgsql -db database_name -host myhost:myport -u username -p password -o ./schemaspy -dp postgresql-9.3-1100.jdbc3.jar -s public -noads

graphvizयदि आप ग्राफिक्स चाहते हैं ( apt-get install graphvizडेबियन आधारित डिस्ट्रोस के लिए) तो आपको इंस्टॉल करना होगा ।


6
दरअसल यह ग्रेविज़ :)
दूरदर्शी

2
स्कीनासै ने पहली कोशिश में यह चाल चली। उत्पन्न ग्राफ का लेआउट बहुत अच्छा था (यहां तक ​​कि हमारे जटिल टेबल सेट पर भी)। जब 100 टेबल एक ही टेबल का संदर्भ देते हैं तो ओवरलैपिंग लाइनें होंगी; हालाँकि, समग्र लेआउट इसके लिए क्षतिपूर्ति करता है और पूरी तरह से सुपाठ्य / पता लगाने योग्य है।
प्रेट्ज़ेल्स 1337

4
के लिए graphvizसिर्फ संलग्न -gv /path_to/graphvizआदेश को
AzizSM

4
मैक पर मुझे जोड़ना था: -रेंडर: क्वार्टर इस त्रुटि से बचने के लिए: -Tcmapx 'रिटर्न कोड 139 के साथ विफल रहा
slashdottir

7
मैक पर डोकर का उपयोग करके इसे चलाने के लिए:docker run -v `pwd`/diagram:/output schemaspy/schemaspy:snapshot -t pgsql --port 5432 -u postgres -db <dbname> -host docker.for.mac.localhost -p <password>
आह

31

PostgreSQL के लिए SchemaCrawler GraphViz की मदद से कमांड लाइन से डेटाबेस आरेख उत्पन्न कर सकता है। आप तालिकाओं और स्तंभों को शामिल करने और बाहर करने के लिए नियमित अभिव्यक्तियों का उपयोग कर सकते हैं। यह सामान्य नामकरण परंपराओं का उपयोग करते हुए तालिकाओं के बीच संबंधों का भी पता लगा सकता है, यदि विदेशी कुंजियों को परिभाषित नहीं किया गया है।


18

त्वरित समाधान मैंने पाया कि विंडोज़ के लिए pgAdmin कार्यक्रम के अंदर था। टूल्स मेनू के तहत एक "क्वेरी टूल" है। क्वेरी टूल के अंदर एक ग्राफिकल क्वेरी बिल्डर है जो डेटाबेस तालिकाओं के विवरण को जल्दी से दिखा सकता है। बुनियादी दृष्टि से अच्छा है


1
मैं नहीं देख सकता कि pgAdmin 1.20.0 में विदेशी कुंजियों का उपयोग करके रिश्तों को स्वचालित रूप से कैसे आकर्षित किया जाए। क्या यह समर्थित है?
pyb

1
अच्छा टिप, हालांकि ऐसा लगता है कि आपको क्वेरी ज्वाइन का उपयोग करके सभी FK को अपने आप खींचना होगा।
एंड्रयू स्वान

6
इस सुविधा को 2016 में PgAdmin 4 में हटा दिया गया था । इसे फिर से लागू किया जा सकता है लेकिन 2019 तक नहीं किया गया है।
Noumenon


9

फ्रैंक हेक्सेंस द्वारा उल्लिखित पोस्टग्रेज कम्युनिटी गाइड के माध्यम से बस http://www.sqlpower.ca/page/altect पाया गया। यह आसानी से एक आरेख उत्पन्न कर सकता है, और फिर आपको कनेक्टर्स को समायोजित करने देता है!


मुझे यह काम करने के लिए नहीं मिला; ArrayIndexOutOfBoundException मिलती रही
उग्र

5

PostgreSQL Autodoc ने मेरे लिए अच्छा काम किया है। यह एक साधारण कमांड लाइन टूल है। वेब पेज से:

यह एक उपयोगिता है जो PostgreSQL सिस्टम टेबल के माध्यम से चलेगी और HTML, Dot, Dia और DocBook XML लौटाती है जो डेटाबेस का वर्णन करती है।


3
जवाब में लिंक टूटा हुआ है। गूगलेड एंड फाउंड : github.com/cbbrowne/autodoc लेकिन बिना सोचे समझे किया गया।
नेल्सन 14

@ साख संबंधी तथ्य। क्या मुझे लिंक स्वैप करना चाहिए, या नहीं? यह उसी व्यक्ति द्वारा प्रतीत नहीं होता है जो इसे बनाए रख रहा था। किसी तरह का कांटा, ऐसा दिखता है।
फहीम मीठा

मैंने
गिटहब

@ यूनिकोनिक हां, मैंने उत्तर देखा। मैंने Bugs.debian.org/820208
फहीम मीठा

2
आप डॉट फ़ाइल से एक png बना सकते हैं जैसे dot -Tpng my_database.dot -o my_database.png:।
क्रिस

1

एक्लिप्स के अंदर मैंने क्ले प्लगइन (एक्स क्ले-अज़ूरि) का उपयोग किया है। मुक्त संस्करण एक मौजूदा DB स्कीमा (JDBC के माध्यम से) ("रिवर्स इंजीनियर") को आत्मनिरीक्षण करने की अनुमति देता है और कुछ चयनित तालिकाओं का आरेख बनाता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.