आप जैसे पाठक MUO का समर्थन करने में मदद करते हैं। जब आप हमारी साइट पर लिंक का उपयोग करके खरीदारी करते हैं, तो हम संबद्ध कमीशन अर्जित कर सकते हैं। और पढ़ें।

SQL सर्वर अस्थायी तालिकाएँ डेटा को अस्थायी रूप से संग्रहीत करती हैं। आप एक अस्थायी तालिका पर समान संचालन कर सकते हैं - जैसे SELECT, INSERT, DELETE, और UPDATE - जैसा कि आप एक नियमित SQL तालिका करते हैं।

अस्थायी तालिकाएँ tempdb डेटाबेस में रहती हैं और केवल कनेक्शन की अवधि के दौरान दिखाई देती हैं। जब आप कनेक्शन समाप्त करते हैं, तो SQL सर्वर अस्थायी तालिका हटा देता है। आप इसे किसी भी समय स्पष्ट रूप से हटा भी सकते हैं।

SQL सर्वर टेम्प टेबल्स के प्रकार

SQL सर्वर अस्थायी तालिकाएँ दो प्रकार की होती हैं: स्थानीय और वैश्विक।

स्थानीय अस्थायी तालिका

एक स्थानीय अस्थायी तालिका केवल उस कनेक्शन को दिखाई देती है जिसने इसे बनाया था। जब वह कनेक्शन समाप्त हो जाता है, या उपयोगकर्ता से डिस्कनेक्ट हो जाता है एस क्यू एल सर्वर उदाहरण के लिए, एक स्थानीय अस्थायी तालिका स्वचालित रूप से गिरा दी जाती है।

एक स्थानीय अस्थायी तालिका बनाने के लिए, तालिका नाम की शुरुआत में CREATE TABLE कथन के साथ एकल हैश प्रतीक (#) का उपयोग करें। यहाँ वाक्य रचना है।

instagram viewer
बनाएंमेज#टेम्पटेबल (
कॉलम1 आईएनटी,
कॉलम2 वचरर(50)
);

उदाहरण के लिए, निम्न कोड नाम और ईमेल फ़ील्ड के साथ TempCustomer नामक एक अस्थायी तालिका बनाता है।

बनाएंमेज#Tempग्राहक (
आईडी पूर्ण प्राथमिक कुंजी नहीं है
पूरा नाम वचर (50),
ईमेल VARCHAR(50)
);

ग्लोबल टेम्प टेबल

एक वैश्विक अस्थायी तालिका सभी कनेक्शनों और उपयोगकर्ताओं के लिए दृश्यमान एक अस्थायी तालिका है। जब सभी कनेक्शन और तालिका को संदर्भित करने वाले उपयोगकर्ता डिस्कनेक्ट हो जाते हैं तो SQL सर्वर इसे छोड़ देगा।

एक वैश्विक अस्थायी तालिका बनाने के लिए, डबल हैश (##) के साथ तालिका का नाम उपसर्ग करें और CREATE TABLE कथन का उपयोग करें।

बनाएंमेज##टेम्पटेबल (
कॉलम1 आईएनटी,
कॉलम2 वचरर(50)
);

निम्न कोड TempCustomer नामक वैश्विक अस्थायी तालिका बनाता है।

बनाएंमेज## अस्थायी ग्राहक (
आईडी पूर्ण प्राथमिक कुंजी नहीं है
पूरा नाम वचर (50),
ईमेल VARCHAR(50)
);

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

कैसे एक अस्थायी तालिका ड्रॉप करने के लिए

SQL सर्वर इंस्टेंस स्वचालित रूप से एक अस्थायी तालिका को छोड़ देता है जब इसे संदर्भित करने वाले सभी उपयोगकर्ता डिस्कनेक्ट हो जाते हैं। सर्वोत्तम अभ्यास के रूप में, आपको tempdb मेमोरी को मुक्त करने के लिए हमेशा अपनी temp टेबल को स्पष्ट रूप से छोड़ना चाहिए।

एक अस्थायी तालिका को छोड़ने के लिए, अस्थायी तालिका के नाम के बाद DROP TABLE IF EXISTS कथन का उपयोग करें।

यहां बताया गया है कि #TempCustomer तालिका कैसे छोड़ें:

बूँदमेजअगरमौजूद#TempCustomer

एक ही कोड का प्रयोग करें लेकिन वैश्विक अस्थायी तालिका को छोड़ने के लिए तालिका का नाम स्वैप करें।

बूँदमेजअगरमौजूद##TempCustomer

SQL टेम्प टेबल्स के विशिष्ट उपयोग

टेंप टेबल उपयोगी होते हैं जब आपको उन जटिल प्रश्नों के मध्यवर्ती परिणामों को संग्रहीत करने की आवश्यकता होती है जिन्हें आपको आगे संसाधित करने की आवश्यकता होती है। उदाहरण के लिए, रिपोर्ट बनाते समय, आपको कई डेटाबेस से क्वेरी परिणामों को संग्रहीत करने के लिए अस्थायी तालिकाएँ बनाने की आवश्यकता हो सकती है। फिर आप अस्थायी तालिकाओं के विरुद्ध एक क्वेरी चलाकर अंतिम रिपोर्ट तैयार कर सकते हैं।

एक अन्य परिदृश्य जहां अस्थायी तालिकाएँ उपयोगी होती हैं, जब आपको किसी अन्य क्वेरी को चलाने के लिए एक तालिका से क्वेरी परिणामों की आवश्यकता होती है। आप परिणामों को अस्थायी तालिका में संग्रहीत कर सकते हैं और फिर इसे अपनी नई क्वेरी में संदर्भित कर सकते हैं। अनिवार्य रूप से, आप किसी विशिष्ट कार्य को करने के लिए आवश्यक डेटा को होल्ड करने के लिए अस्थायी तालिका को कार्य या बफर तालिका के रूप में उपयोग कर रहे हैं।

SQL सर्वर में Temp टेबल्स का उपयोग करना

डेटा को अस्थायी रूप से संग्रहीत और संसाधित करने के लिए आप SQL सर्वर अस्थायी तालिकाओं का उपयोग कर सकते हैं। स्थानीय और वैश्विक दो प्रकार की अस्थायी तालिकाएँ हैं। एक स्थानीय अस्थायी तालिका उस कनेक्शन के लिए दृश्यमान होती है जिसमें इसे बनाया गया है जबकि वैश्विक अस्थायी तालिका सभी कनेक्शनों में दिखाई देती है।

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