इसके माध्यम से साझा किया गया


Excel फाइलों पर SQL क्वेरी चलाएं

हालाँकि Excel क्रियाएँ अधिकांश Excel स्वचालन परिदृश्यों को संभाल सकती हैं, SQL क्वेरीज़ Excel डेटा की महत्वपूर्ण मात्रा को अधिक कुशलता से पुनर्प्राप्त और हेरफेर कर सकती हैं।

मान लीजिए कि किसी प्रवाह को केवल उन Excel रजिस्ट्रियों को संशोधित करना है जिनमें कोई विशेष मान है। SQL क्वेरी के बिना इस कार्यक्षमता को प्राप्त करने के लिए, आपको लूप, कंडीशनल और एकाधिक Excel क्रियाओं की आवश्यकता होती है।

वैकल्पिक रूप से, आप केवल दो क्रियाओं का उपयोग करके SQL क्वेरी के साथ इस कार्यक्षमता को कार्यान्वित कर सकते हैं, SQL कनेक्शन खोलें और SQL स्टेटमेंट निष्पादित करें।

Excel फ़ाइल में SQL कनेक्शन खोलें

SQL क्वेरी चलाने से पहले, आपको उस Excel फ़ाइल के साथ एक कनेक्शन खोलना होगा जिसे आप एक्सेस करना चाहते हैं।

कनेक्शन स्थापित करने के लिए, %Excel_File_Path% नामक एक नया वेरिएबल बनाएं और इसे एक्सेल फ़ाइल पथ के साथ प्रारंभ करें। वैकल्पिक रूप से, आप इस चरण को छोड़ सकते हैं और बाद में प्रवाह में फ़ाइल के हार्ड-कोडित पथ का उपयोग कर सकते हैं।

एक्सेल फ़ाइल पथ के साथ सेट वैरिएबल क्रिया का स्क्रीनशॉट।

अब, ओपन SQL कनेक्शन क्रिया को तैनात करें और इसके गुणों में निम्नलिखित कनेक्शन स्ट्रिंग को पॉप्युलेट करें।

प्रदाता=Microsoft.ACE.OLEDB.12.0;डेटा स्रोत=%Excel_File_Path%;विस्तारित गुण='एक्सेल 12.0 Xml;HDR=YES';

नोट

प्रस्तुत कनेक्शन स्ट्रिंग का सफलतापूर्वक उपयोग करने के लिए, आपको Microsoft Access डेटाबेस इंजन 2010 पुनर्वितरण योग्य को डाउनलोड और इंस्टॉल करना होगा।

ओपन एसक्यूएल कनेक्शन क्रिया का स्क्रीनशॉट।

पासवर्ड से सुरक्षित एक्सेल फ़ाइल में SQL कनेक्शन खोलें

उन परिदृश्यों में एक अलग दृष्टिकोण की आवश्यकता होती है जहां आप पासवर्ड-सुरक्षित एक्सेल फ़ाइलों पर SQL क्वेरी चलाते हैं। SQL कनेक्शन खोलें क्रिया पासवर्ड-सुरक्षित एक्सेल फ़ाइलों से कनेक्ट नहीं हो सकती है, इसलिए आपको सुरक्षा हटानी होगी।

इसे प्राप्त करने के लिए, एक्सेल लॉन्च करें क्रिया का उपयोग करके एक्सेल फ़ाइल लॉन्च करें। फ़ाइल पासवर्ड से सुरक्षित है, इसलिए पासवर्ड फ़ील्ड में उचित पासवर्ड दर्ज करें।

एक्सेल लॉन्च कार्रवाई और पासवर्ड फ़ील्ड का स्क्रीनशॉट।

इसके बाद, उपयुक्त यूआई स्वचालन क्रियाएं तैनात करें और फ़ाइल>जानकारी>कार्यपुस्तिका को सुरक्षित रखें>पासवर्ड के साथ एन्क्रिप्ट करें पर नेविगेट करें. आप यूआई स्वचालन और संबंधित क्रियाओं का उपयोग करने के तरीके के बारे में अधिक जानकारी डेस्कटॉप अनुप्रयोगों को स्वचालित करें में पा सकते हैं।

पासवर्ड के साथ एन्क्रिप्ट करें विकल्प का चयन करने के लिए उपयोग की जाने वाली यूआई क्रियाओं का स्क्रीनशॉट।

पासवर्ड के साथ एन्क्रिप्ट करें का चयन करने के बाद, विंडो में टेक्स्ट फ़ील्ड को पॉप्युलेट करें का उपयोग करके पॉप-अप संवाद में एक खाली स्ट्रिंग पॉप्युलेट करें। एक खाली स्ट्रिंग को पॉप्युलेट करने के लिए, निम्नलिखित अभिव्यक्ति का उपयोग करें: %""%

विंडो क्रिया में पॉप्युलेट टेक्स्ट फ़ील्ड का स्क्रीनशॉट।

संवाद में ठीक बटन दबाने और परिवर्तन लागू करने के लिए, विंडो क्रिया में प्रेस बटन तैनात करें।

विंडो कार्रवाई में प्रेस बटन का स्क्रीनशॉट।

अंत में, गैर-संरक्षित कार्यपुस्तिका को एक नई Excel फ़ाइल के रूप में सहेजने के लिए Excel बंद करें क्रिया लागू करें।

चयनित दस्तावेज़ को इस रूप में सहेजें विकल्प के साथ एक्सेल बंद करें क्रिया का स्क्रीनशॉट।

फ़ाइल को सहेजने के बाद, इससे कनेक्शन खोलने के लिए किसी Excel फ़ाइल में SQL कनेक्शन खोलें में दिए गए निर्देशों का पालन करें।

जब एक्सेल फ़ाइल का हेरफेर पूरा हो जाए, तो एक्सेल फ़ाइल की गैर-संरक्षित प्रतिलिपि को हटाने के लिए फ़ाइलें हटाएं क्रिया का उपयोग करें।

फ़ाइलें हटाएँ कार्रवाई का स्क्रीनशॉट.

एक्सेल स्प्रेडशीट की सामग्री पढ़ें

यद्यपि एक्सेल वर्कशीट से पढ़ें क्रिया एक्सेल वर्कशीट की सामग्री को पढ़ सकती है, लूप को पुनर्प्राप्त डेटा के माध्यम से पुनरावृत्त करने में महत्वपूर्ण समय लग सकता है।

स्प्रेडशीट से विशिष्ट मान प्राप्त करने का एक अधिक प्रभावी तरीका एक्सेल फ़ाइलों को डेटाबेस के रूप में मानना ​​​​और उन पर SQL क्वेरी निष्पादित करना है। यह दृष्टिकोण तेज़ है और प्रवाह के प्रदर्शन को बढ़ाता है।

किसी स्प्रेडशीट की सभी सामग्री को पुनः प्राप्त करने के लिए, आप SQL कथन निष्पादित करें क्रिया में निम्नलिखित SQL क्वेरी का उपयोग कर सकते हैं।

SELECT * FROM [SHEET$]

SELECT क्वेरी के साथ निष्पादित SQL स्टेटमेंट निष्पादित करने का स्क्रीनशॉट।

नोट

इस SQL ​​क्वेरी को अपने प्रवाह में लागू करने के लिए, SHEET प्लेसहोल्डर को उस स्प्रेडशीट के नाम से बदलें जिसे आप एक्सेस करना चाहते हैं।

किसी विशिष्ट कॉलम में किसी विशेष मान वाली पंक्तियों को पुनः प्राप्त करने के लिए, निम्न SQL क्वेरी का उपयोग करें:

SELECT * FROM [SHEET$] WHERE [COLUMN NAME] = 'VALUE'

नोट

इस SQL ​​क्वेरी को अपने प्रवाह में लागू करने के लिए, प्रतिस्थापित करें:

  • शीट उस स्प्रेडशीट के नाम के साथ जिसे आप एक्सेस करना चाहते हैं।
  • कॉलम नाम उस कॉलम के साथ जिसमें वह मान है जिसे आप ढूंढना चाहते हैं। एक्सेल वर्कशीट की पहली पंक्ति के कॉलम को तालिका के कॉलम नामों के रूप में पहचाना जाता है।
  • VALUE उस मान के साथ जिसे आप खोजना चाहते हैं।

Excel पंक्ति से डेटा हटाएँ

हालाँकि Excel DELETE SQL क्वेरी का समर्थन नहीं करता है, आप सभी सेल सेट करने के लिए UPDATE क्वेरी का उपयोग कर सकते हैं एक विशिष्ट पंक्ति को शून्य करने के लिए।

अधिक सटीक रूप से, आप निम्न SQL क्वेरी का उपयोग कर सकते हैं:

UPDATE [SHEET$] SET [COLUMN1]=NULL, [COLUMN2]=NULL WHERE [COLUMN1]='VALUE'

अद्यतन क्वेरी के साथ निष्पादित SQL कथनों का स्क्रीनशॉट।

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

COLUMN1 और COLUMN2 प्लेसहोल्डर संभाले जाने वाले कॉलम के नामों का प्रतिनिधित्व करते हैं। इस उदाहरण में दो कॉलम हैं, लेकिन वास्तविक परिदृश्य में, कॉलम की संख्या भिन्न हो सकती है। एक्सेल वर्कशीट की पहली पंक्ति के कॉलम को तालिका के कॉलम नामों के रूप में पहचाना जाता है।

क्वेरी का [COLUMN1]='VALUE' भाग उस पंक्ति को परिभाषित करता है जिसे आप अपडेट करना चाहते हैं। अपने प्रवाह में, कॉलम नाम और मान का उपयोग करें जिसके आधार पर संयोजन पंक्तियों का विशिष्ट रूप से वर्णन करता है।

किसी विशिष्ट पंक्ति को छोड़कर एक्सेल डेटा पुनर्प्राप्त करें

कुछ परिदृश्यों में, आपको एक विशिष्ट पंक्ति को छोड़कर एक्सेल स्प्रेडशीट की सभी सामग्री को पुनः प्राप्त करने की आवश्यकता हो सकती है।

इसे प्राप्त करने का एक सुविधाजनक तरीका अवांछित पंक्ति के मानों को शून्य पर सेट करना और फिर शून्य को छोड़कर सभी मानों को पुनः प्राप्त करना है।

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

UPDATE [SHEET$] SET [COLUMN1]=NULL, [COLUMN2]=NULL WHERE [COLUMN1]='VALUE'

अद्यतन क्वेरी के साथ निष्पादित SQL कथनों का स्क्रीनशॉट।

इसके बाद, स्प्रैडशीट की उन सभी पंक्तियों को पुनः प्राप्त करने के लिए निम्न SQL क्वेरी चलाएँ जिनमें शून्य मान नहीं हैं:

SELECT * FROM [SHEET$] WHERE [COLUMN1] IS NOT NULL OR [COLUMN2] IS NOT NULL

COLUMN1 और COLUMN2 प्लेसहोल्डर संभाले जाने वाले कॉलम के नामों का प्रतिनिधित्व करते हैं। इस उदाहरण में दो कॉलम हैं, लेकिन वास्तविक तालिका में, कॉलम की संख्या भिन्न हो सकती है। एक्सेल वर्कशीट की पहली पंक्ति के सभी कॉलम तालिका के कॉलम नामों के रूप में पहचाने जाते हैं।