कंप्यूटरप्रोग्रामिंग

एसक्यूएल-प्रश्नों आदेश

एसक्यूएल - सबसे आम प्रोग्रामिंग भाषाओं को बनाने के लिए और प्रबंधित डेटाबेस, साथ ही डेटा के साथ ही कार्यों की एक किस्म के लिए में से एक।

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

SQL कमांड का वर्गीकरण

सभी मानक SQL कमांड के अपने गंतव्य के आधार पर माना जा सकता है। वर्गीकरण vneglasnoy के लिए आधार के रूप में के रूप में ऐसी सेट ले जा सकते हैं:

  1. आदेशों क्वेरी करने के लिए।

  2. टीम में निर्मित प्रक्रियाओं और कार्य करता है।

  3. चलाता है और सिस्टम टेबल आदेश।

  4. संयोजन के सेट की तारीख और स्ट्रिंग चर के साथ काम करने के लिए।

  5. डेटा और तालिकाओं के साथ काम करने के लिए आदेश देता है।

यह वर्गीकरण अंतहीन है, लेकिन बुनियादी एसक्यूएल भाषा आदेश सेट ठीक है क्योंकि इन प्रकार के निर्माण कर रहे हैं।

भाषा के वर्गीकरण को देखते हुए, यह है कि यह सार्वभौमिक है, के रूप में इसके उपयोग के दायरे से इसका सबूत उल्लेख करने के लिए नहीं। इस प्रोग्रामिंग भाषा और उसके संस्करण मानक वातावरण में, लेकिन यह भी अन्य कार्यक्रमों, जो एक तरह से या किसी अन्य के लिए, आप का इस्तेमाल किया है में न केवल उपयोग किया जाता है।

एसक्यूएल के उपयोग के दायरे कार्यालय सॉफ्टवेयर के नजरिए, अर्थात् MicrosoftAccess से देखी जा सकती है। इसमें, भाषा, या बल्कि, अपने प्रजातियों - MySQL, आप इंटरनेट डेटाबेस व्यवस्थापन कर सकते हैं। यहां तक कि ओरेकल विकास के वातावरण प्रश्नों की SQL कमांड में उनके उपयोग पर आधारित है।

MicrosoftAccess में एसक्यूएल का उपयोग करना

डेटाबेस प्रोग्रामिंग सॉफ्टवेयर पैकेज का सबसे आम उपयोग भाषा में से एक MicrosoftOffice माना जाता है। इस सॉफ्टवेयर का अध्ययन कंप्यूटर विज्ञान के एक स्कूल पाठ्यक्रम प्रदान करता है, और ग्यारहवें कक्षा में माना जाता है एक डेटाबेस प्रबंधन प्रणाली MicrosoftAccess।

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

एक विशिष्ट उदाहरण पर विचार करें:

चयन Pe_SurName

Pherson से

कहां Pe_Name = 'मैरी';

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

हालांकि Access में एसक्यूएल के उपयोग सीमित है, कभी कभी इस तरह के सरल प्रश्नों बहुत सौंपे गए कार्यों के कार्यान्वयन को आसान बनाने में कर सकते हैं।

Oracle में SQL कथन का उपयोग करना

ओरेकल - यह शायद केवल Microsoft SQL सर्वर एक गंभीर प्रतियोगी है। यह इस विकास के वातावरण और के प्रबंधन है डेटाबेस प्रगति का इंजन है - लगातार प्रतियोगिता के रूप में सॉफ्टवेयर कंपनी माइक्रोसॉफ्ट उत्पाद सुविधाओं के सुधार के लिए होता है। लगातार प्रतिद्वंद्विता के बावजूद, एसक्यूएल ओरेकल टीम एसक्यूएल दोहराया। यह ध्यान देने योग्य है कि हालांकि ओरेकल और लगभग एसक्यूएल की पूरी प्रतिलिपि, इस प्रणाली के तर्क माना जाता है, और भाषा आम तौर पर आसान माना जाता है।

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

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

SELECTCONCAT (concat (concat ( 'कर्मचारी', SNAME), concat (substr (fname, 0, 1), substr (otch, 0, 1))), concat ( 'prinyatnarabotu', acceptdate)) कर्मचारियों से कहां acceptdate> TO_DATE ('01 .01.80 ',' dd.mm.yyyy ');

इस क्वेरी कर्मचारियों, जो समय की एक निश्चित अवधि के लिए काम कर रहे हैं के बारे में डेटा दिखाएगी। हालांकि क्वेरी संरचना से अलग है Microsoft SQL सर्वर, एसक्यूएल के निष्पादन इन प्रणालियों में आदेश नाबालिग विवरण के लिए छोड़कर, समान है।

इंटरनेट पर एसक्यूएल का उपयोग करना

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

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

वाक्य रचना और आदेशों भाषा पूरी तरह से सभी परिचित एसक्यूएल कॉपी, उसके अतिरिक्त है, जो उसे माइक्रोसॉफ्ट TSQL सर्वर के विपरीत दे से कुछ के साथ के मूल सेट।

एसक्यूएल पूरी तरह से समान आदेश न केवल वाक्यविन्यास लेकिन यह भी समारोह शब्दों का एक मानक सेट। फर्क सिर्फ इतना है कॉल अनुरोध और संरचना में है। उदाहरण के लिए, एक नई तालिका बनाने के लिए एक अनुरोध पर विचार वह पहली बार है कि वे क्या कंप्यूटर पर स्कूलों में बच्चों को पढ़ाने:

$ लिंक = mysqli_connect ( 'स्थानीय होस्ट', "रूट", '', 'परीक्षक');

if (! $ लिंक) मर जाते हैं ( "त्रुटि");

$ क्वेरी = 'तालिका उपयोगकर्ताओं को बनाने (

लॉग इन VARCHAR (20)

पासवर्ड VARCHAR (20)

');

अगर (mysqli_query ($ लिंक, $ क्वेरी)) गूंज "टेबल बनाया।";

elseecho "तालिका नहीं बनाई गई है:" .mysqli_error ();

mysqli_close ($ लिंक);

उपयोगकर्ता नाम और पासवर्ड: इस तरह का अनुरोध का एक परिणाम के रूप में, आप एक नया टेबल "उन", जिसमें वहाँ दो क्षेत्रों हो जाएगा प्राप्त कर सकते हैं।

सिंटेक्स वेब के तहत बदल गया है, लेकिन MicrosoftSQLServer टीम पर आधारित है।

बिल्डिंग प्रश्नों MicrosoftSQLServer

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

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

व्यक्ति से * का चयन करें

कहाँ P_BerthDay> = '01 / 01/2016 'और P_BerthDay <= '03 / 01/2016'

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

SelectP_Name - नाम

P_SurName - उपनाम

P_Patronimic - गोत्र

व्यक्ति से

कहाँ P_BerthDay> = '01 / 01/2016 'और P_BerthDay <= '03 / 01/2016'

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

बेसिक SQL डेटा को बदलने के लिए आदेश

वाक्य रचना न केवल क्वेरी किए जाने के लिए, लेकिन यह भी डेटा हेरफेर के लिए बनाया गया है। असल में, कार्य डेटाबेस प्रोग्रामर नमूने और रिपोर्ट के लिए स्क्रिप्ट लिख रहा है, लेकिन कभी कभी आप तालिका में परिवर्तन करने की जरूरत है। एसक्यूएल आदेश इस तरह के कार्यों के लिए सूची छोटा है और तीन मुख्य टीमों के होते हैं:

  1. (ट्रांस। डालें) डालें।

  2. अद्यतन (ट्रांस। अद्यतन)।

  3. (ट्रांस। निकालें) को हटा दें।

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

एक नियम के रूप में, इन आदेशों MSSQL उपयोग करने से पहले आप समझते हैं और खाते में उनके कार्यान्वयन के सभी संभावित परिणामों लेने के लिए की जरूरत है।

इन आदेशों सीखने के बाद, आप पूरी तरह से डेटाबेस तालिकाओं के साथ काम शुरू करने के, जिससे यह संशोधित करने और पर कुछ नए व्याख्यात्मक चर बनाने या पुराने को दूर कर सकेंगे।

टीम सम्मिलित

सबसे सुरक्षित टीम का उपयोग कर एक तालिका में डेटा सम्मिलित करने के लिए - सम्मिलित। गलत तरीके से डाला डेटा हमेशा निकालें और पुन: डेटाबेस में जोड़ने के लिए संभव है।

तालिका में नए डेटा डालने के लिए आदेश डालें और आप एक पूरा सेट के रूप में जोड़ने के लिए, और चुनिंदा अनुमति देता है।

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

व्यक्ति में डालें

चुनें 'Grigoriev' 'विटाली', 'Petrovich', '1988/01/01'

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

Insertintoperson (P_Name, P_SurName, P_BerthDay)

मान ( 'डेविड', 'हुक', '1986/02/11')

यह टीम केवल निर्दिष्ट सेल भरता है, और अन्य सभी रिक्त हो जाएगा।

कमान डेटा बदलने के लिए

एक पूरी लाइन के रूप में डेटा को बदलने के लिए, और कुछ कोशिकाओं अद्यतन एसक्यूएल आदेश का उपयोग करें। इस आदेश को कुछ शर्तों के केवल जरूरत को पूरा करें, अर्थात्, ठीक संख्या परिवर्तन करने के लिए आवश्यक की जो लाइन में संकेत मिलता है।

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

अद्यतन व्यक्ति

सेट P_BerthDay = '02 / 10/1986 'जहां P_ID = 5

(लिपि में) स्थिति सभी तालिका अभिलेखों की जन्म तिथि में परिवर्तन नहीं होगा, और अद्यतन केवल आवश्यक।

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

बिल्ट-इन प्रक्रियाओं और कार्यों का उपयोग करने के लिए आदेश

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

तार्किक रूप से परखने के बाद, तो आप को कॉपी करें और सही जगह में नमूना पाठ पेस्ट करने की आवश्यकता है, लेकिन आप एक सरल उपाय कर सकते हैं। एक उदाहरण है जहां काम कर रहे इंटरफ़ेस प्रदर्शित किया बटन Excel में उदाहरण के लिए रिपोर्ट को प्रिंट करने, पर विचार करें। इस आपरेशन के रूप में की जरूरत प्रदर्शन किया जाएगा। इस तरह के उद्देश्यों के लिए, बिल्ट-इन संग्रहित प्रक्रियाओं कर रहे हैं। आदेश एसक्यूएल प्रश्नों, इस मामले में, प्रक्रिया में हैं और एक SQLExec टीम के कारण होता है।

हमें लगता है कि पहले बताए व्यक्ति की मेज के साथ कर्मचारियों के जन्म की वापसी दिनांकों प्रक्रिया बनाया गया था करते हैं। इस मामले में, संपूर्ण क्वेरी लिखने के लिए कोई जरूरत नहीं है। आवश्यक जानकारी प्राप्त करने के लिए आदेश Exec [प्रक्रिया का नाम] पर अमल और नमूने के लिए आवश्यक मानकों को पारित करने के लिए पर्याप्त है। एक उदाहरण के रूप में हम प्रक्रिया की ऐसी प्रकृति के निर्माण के लिए तंत्र पर विचार कर सकते हैं:

CREATEPROCEDUREPrintPerson

@DB smalldatetime

@DE smalldatetime

के रूप में

NOCOUNT पर सेट;

व्यक्ति से चुनें *

HumanResources.vEmployeeDepartmentHistory से

कहां P_BerthDay> = @DB और P_BerthDay <= @DE

ANDEndDateISNULL;

GO

यह प्रक्रिया कर्मचारियों के बारे में सभी जानकारी जिसका जन्मदिन एक निश्चित समय अवधि में हो जाएगा देता है।

संगठन डेटा अखंडता। ट्रिगर्स

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

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

SQL कमांड के प्रकार है कि एक ट्रिगर में इस्तेमाल किया जा सकता है, सीमित नहीं है। निम्न उदाहरण पर विचार करें।

हम ट्रिगर बनाने के लिए तंत्र का वर्णन है, तो SQL कमांड के प्रकार जब एक प्रक्रिया बनाने के समान ही हैं। एल्गोरिथ्म ही नीचे वर्णित किया जाएगा।

पहला कदम चलाता बनाने के लिए सेवा आदेश का वर्णन करने के लिए है:

बनाएँ TRIGGER Person_Insert

एक मेज के आगे बिंदु:

ONPerson

यह बताता है जिसके लिए डेटा के संचालन (इस मामले में, डेटा आपरेशन बदल)।

अगले कदम के लिए मेज और चर निर्दिष्ट करने के लिए है:

@ID पूर्णांक घोषणा करते हैं। @date smalldatetime @nID पूर्णांक। @nDatesmalldatetime

इसके अलावा डेटा तालिकाओं को हटाने और डेटा की प्रविष्टि का चयन करने के कर्सर की घोषणा:

सम्मिलित से चुनें P_ID के लिए कर्सर सी 1 का ऐलान करते हैं P_BerthDay

चुनिंदा P_ID, P_BerthDay के लिए कर्सर सी 2 की घोषणा नष्ट कर दिया से

डेटा चयन चरणों को परिभाषित करना। शरीर में एक बार कर्सर इसे करने के लिए स्थिति और प्रतिक्रिया लिख:

यदि @ID = @nID और @nDate = '01 / 01/2016 '

शुरू करना

sMasseges 'भागो आपरेशन असंभव। तिथि उपयुक्त नहीं है '

अंत

यह उल्लेख है कि ट्रिगर केवल नहीं बना सकते, लेकिन यह भी कुछ समय के लिए बंद कर देते हैं लायक है। इस तरह के हेरफेर केवल एक प्रोग्रामर प्रदर्शन एसक्यूएल सर्वर कमांड पकड़ कर सकते हैं:

altertablePERSONdisabletriggerall - मेज के लिए बनाई गई सभी ट्रिगर निष्क्रिय करने के लिए, और, तदनुसार, altertablePERSONenabletriggerall - शामिल करने के लिए।

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

निष्कर्ष

ऊपर से हम केवल निष्कर्ष निकाल सकते हैं: एसक्यूएल भाषा कौशल जो लोग प्रोग्रामिंग में गंभीरता से नाता जोड़ना चाहते हैं के लिए जरूरी। यह इंटरनेट में और घर डेटाबेस में प्रदर्शन सभी कार्यों के दिल में निहित है। यही कारण है कि भविष्य प्रोग्रामर, भाषा के आदेशों की संख्या पता होना चाहिए, क्योंकि केवल वे हो सकता है, तो बात करने के लिए, कंप्यूटर के साथ संवाद करने के लिए है।

बेशक, कमियों, इस दुनिया में सब कुछ के रूप में हैं, लेकिन वे इतना छोटा कि बस गुण से पहले पीला कर रहे हैं। सभी एसक्यूएल प्रोग्रामिंग भाषा के अलावा, लगभग अपनी तरह का केवल एक ही है, क्योंकि यह सार्वभौमिक, और स्क्रिप्ट लिखने पर ज्ञान है और कोड लगभग सभी साइटों का आधार हैं।

एसक्यूएल bezogovorchno का मुख्य लाभ, अपनी सादगी माना जा सकता है क्योंकि, सब के बाद, यह वह था जो स्कूल के पाठ्यक्रम में पेश किया। चूंकि यह भी एक नौसिखिया प्रोग्रामर संभाल कर सकते हैं, वास्तव में भाषाओं में निपुण नहीं।

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 hi.birmiss.com. Theme powered by WordPress.