क्या डीबी-मैनेजर में टेबल को एडिट करने के बाद किसी लेयर की विशेषता तालिका को रीफ्रेश करने का कोई तरीका है (उदाहरण के लिए एक कॉलम जोड़ें)?
क्या डीबी-मैनेजर में टेबल को एडिट करने के बाद किसी लेयर की विशेषता तालिका को रीफ्रेश करने का कोई तरीका है (उदाहरण के लिए एक कॉलम जोड़ें)?
जवाबों:
छोटा एवं सुन्दर:
Change vector datasource
।OK
बिना किसी सेटिंग को बदले बस हिट करें ।मूल रूप से, आप वेक्टर डेटा स्रोत को "पहले से ही" बदल रहे हैं, लेकिन यह QGIS को परत की परिभाषा को फिर से लोड करने के लिए मजबूर करता है।
लिनक्स मिंट 17.2 पर QGIS 2.14 में परीक्षण किया गया।
यह मानते हुए कि PostGIS डेटाबेस के साथ आपका काम, आप ANALYSE
फ़ंक्शन का उपयोग करके ब्याज की तालिका के आंकड़ों को अपडेट कर सकते हैं :
http://www.postgresql.org/docs/current/static/sql-analyze.html
आपके मामले में आप डीबी-प्रबंधक के अंदर स्टेटमेंट को संलग्न छवि में चिह्नित बटन दबाकर और ANALYSE
विंडो में स्टेटमेंट निष्पादित कर सकते हैं, जो कि चिह्नित भी है। क्वेरी होगी ANALYSE yourschema.yourtable
। विश्लेषण कमांड को आपकी तालिका को अपडेट करना चाहिए, ताकि जब आप जानकारी फिर से एक्सेस करें तो यह आपके द्वारा किए गए परिवर्तनों को प्रतिबिंबित करे।
क्या मुझे अच्छी तरह से समझ में आता है अगर आप कॉलम में बदलाव के बाद QGIS में टेबल को रिफ्रेश करना चाहते हैं?
जहां तक मुझे पता है, केवल परियोजना को बंद करना और खोलना या तालिका को फिर से जोड़ना यह होगा। जब तक आप डेटाबेस में डिफ़ॉल्ट शैली को सहेजते हैं जो सबसे तेज़ तरीका हो सकता है।
जब फ़ील्ड कैलकुलेटर के साथ एक कॉलम जोड़ा जाता है तो परिवर्तन तुरंत दिखाई देते हैं लेकिन DB प्रबंधक फ़ील्ड प्रकार को परिभाषित करने में अधिक नियंत्रण प्रदान करता है इसलिए मैं समझता हूं कि इसका समाधान क्यों नहीं हो सकता है।
layer.dataProvider().forceReload()
चाल करना चाहिए