स्पैटियालाइट में स्थानिक परतों (तालिकाओं) में विभिन्न सहायक वस्तुएं और मेटाडेटा शामिल हैं, जिसमें ट्रिगर्स, सूचकांकों और न्यूनतम (कम से कम) geometry_columns
तालिका में प्रविष्टियां शामिल हैं । मैं (अधिमानतः) एक जीयूआई की तलाश कर रहा हूं जो सभी आवश्यक बदलावों को एक ही बार में संभाल लेगा, या सभी आवश्यक परिवर्तनों के दस्तावेज़ीकरण को बदल देगा ताकि स्थानिक परतों को न तोड़ा जा सके।
टेबल्स हैं:
- में प्रवेश
geometry_columns.f_table_name
। - पांच ट्रिगर नाम
[prefix]_[table_name]_geometry
, जहां उपसर्ग इंगित करता है कि क्या यह एक लेन-देन रोलबैक या इंडेक्स अपडेट है। - नामित तीन स्थानिक सूचकांक
idx_[table_name]_geometry[_suffix]
मैंने QGIS DB प्रबंधक और स्पैटियालाइट-GUI, दो अनुप्रयोगों में यह कोशिश की है।
QGIS DB प्रबंधक के निम्नलिखित प्रभाव दिखाई देते हैं:
geometry_columns
नए तालिका नाम के साथ सही अपडेट- ट्रिगर का नाम नहीं बदलता है। ट्रिगर परिभाषा को आंशिक रूप से संशोधित किया गया है ताकि
BEFORE [INSERT|UPDATE|DELETE]
नए तालिका नाम को संदर्भित किया जाए , लेकिन स्थिति अभी भी पुराने नाम की खोज करती हैgeometry_columns
। - स्थानिक सूचकांकों का नाम नहीं लेता है। सुनिश्चित नहीं है कि यह मायने रखता है क्योंकि ट्रिगर अभी भी पुराने सूचकांक नामों का उल्लेख करते हैं।
जब आप रखरखाव → स्पैटियालाइट-जीयूआई में तालिका का नाम बदलते हैं, तो आपको सिर्फ SQL ALTER TABLE
स्टेटमेंट का स्टब मिलता है । यह सीधा SQL है और QGIS DB प्रबंधक से भी कम है। यदि आप नए तालिका नाम को भरते हैं, तो तालिका का नाम बदल जाता है। अन्य प्रभाव:
- तालिका का नाम नहीं बदला गया है
geometry_columns.f_table_name
, जिसका अर्थ है कि कई जीआईएस तालिका को स्थानिक परत के रूप में नहीं देखेंगे। - ट्रिगर का नाम नहीं बदलता है। ट्रिगर परिभाषा को आंशिक रूप से संशोधित किया गया है ताकि
BEFORE [INSERT|UPDATE|DELETE]
नए तालिका नाम को संदर्भित किया जाए , लेकिन स्थिति अभी भी पुराने नाम की खोज करती हैgeometry_columns
। - स्थानिक सूचकांकों का नाम नहीं लेता है। सुनिश्चित नहीं है कि यह मायने रखता है क्योंकि ट्रिगर अभी भी पुराने सूचकांक नामों का उल्लेख करते हैं।
ध्यान दें कि स्पेसियल-जीयूआई एक ज्यामिति कॉलम को पुनर्प्राप्त करने का विकल्प देता है जो सही प्रविष्टि जोड़ता है geometry_columns
(लेकिन आपको एसआरआईडी, ज्यामिति प्रकार और आयामों को निर्दिष्ट करने की आवश्यकता होती है), एक स्थानिक सूचकांक के निर्माण या पुनर्निर्माण के लिए, और चार्जर को पुनर्प्राप्त करने के लिए, लेकिन कोई नहीं इन कार्यों में पुरानी तालिका पंक्तियों, ट्रिगर्स या सूचकांकों को हटा दिया जाता है, जिससे इसमें बहुत अधिक (संभवतः हानिरहित लेकिन कष्टप्रद) schmutz के साथ एक DB हो जाता है।