मालवेअर हे अनाहूत किंवा धोकादायक प्रोग्राम आहेत जे...
![व्हायरस आणि मालवेअर काढून टाकण्यासाठी सर्वोत्तम उपयुक्तता](https://i2.wp.com/webhelper.info/images/danger.jpg)
भाष्य: हे व्याख्यान पूर्ण केल्यानंतर, तुम्ही पुढील गोष्टी करू शकाल: SQL सर्व्हर मॅनेजमेंट स्टुडिओ क्वेरी बिल्डर वापरून क्वेरी तयार करणे, डेटाबेस सिस्टम टेबलमधून डेटाबेस माहिती काढणे, डायनॅमिकपणे वापरकर्त्याच्या इनपुटवर आधारित साध्या क्वेरी तयार करणे, वापरकर्ता इनपुटचे स्वरूपन करणे आणि जटिल डायनॅमिक क्वेरी फिल्टर करणे, पार्सिंग करणे आणि फिल्टरमध्ये वापरण्यासाठी डेटाचे रीफॉर्मेट करा, डेटाबेसला SQL इंजेक्शन हल्ल्यांपासून संरक्षित करा, क्वेरी सबमिट करण्यासाठी sp_executeSql प्रक्रिया वापरा
मागील लेक्चरमध्ये कसे वाढवायचे याबद्दल बोलले होते कामगिरीविनंत्या संचयित प्रक्रिया किंवा दृश्यांमध्ये पूर्व-निर्मित क्वेरी वापरून वापरकर्त्यांना आपल्या अनुप्रयोगातील सर्वात उपयुक्त माहिती प्रदान करण्यासाठी प्रश्नांचा एक कार्यक्षम संच कसा तयार करायचा हे आता तुम्हाला माहिती आहे.
तथापि, कोणत्याही परंतु सर्वात सोप्या ऍप्लिकेशन्समध्ये, वापरकर्त्यांना आवश्यक असलेल्या माहितीच्या प्रकारांमधील सर्व संभाव्य भिन्नता आणि त्यांना ते कसे फिल्टर आणि व्यवस्थित करायचे आहे हे आधीच जाणून घेणे अशक्य आहे. अशा सर्व क्षमता प्रदान करण्याचा प्रयत्न करण्याऐवजी, आपण वापरकर्त्यास अनुप्रयोगाद्वारे नोंदवलेल्या माहितीवर नियंत्रण देऊ शकता. रनटाइम दरम्यान वापरकर्त्याने केलेल्या निवडींच्या आधारे डायनॅमिकली क्वेरी कशा तयार करायच्या यावर हे व्याख्यान चर्चा करते.
SQL सर्व्हर मॅनेजमेंट स्टुडिओमध्ये बिल्डिंग क्वेरीसाठी अत्याधुनिक इंटरफेस समाविष्ट आहे. डायनॅमिक पद्धतीने क्वेरी कशा तयार केल्या जाऊ शकतात याची कल्पना देण्यासाठी हा इंटरफेस एक्सप्लोर करूया. तुमच्या अर्जाला या सर्वांची गरज भासणार नाही नियंत्रणेजे SQL सर्व्हर व्यवस्थापन स्टुडिओ द्वारे प्रदान केले जातात. मूलत:, वापरकर्त्यांच्या निवडी कशा मर्यादित कराव्यात याचा काळजीपूर्वक विचार करणे आवश्यक आहे.
वापरकर्त्याला पर्यायांची सूची प्रदान करण्यासाठी, अनुप्रयोगास डेटाबेस सारण्यांबद्दल माहिती पुनर्प्राप्त करावी लागेल. ही माहिती मिळवण्याचे अनेक मार्ग आहेत. यापैकी सर्वात महत्त्वाची पद्धत म्हणजे INFORMATION_SCHEMA स्कीमा वापरणे. ही योजना कोणत्याही डेटाबेसमध्ये मानक आहे.
INFORMATION_SCHEMA स्कीमा ही एक विशेष योजना आहे जी प्रत्येक डेटाबेसमध्ये अस्तित्वात असते. त्यात काही डेटाबेस ऑब्जेक्ट्सच्या व्याख्या आहेत.
INFORMATION_SCHEMA ANSI मानकाचे अनुसरण करते, जे कोणत्याही ANSI-अनुरूप डेटाबेस इंजिनमधून माहिती पुनर्प्राप्त करण्यासाठी डिझाइन केलेले आहे. SQL सर्व्हरमध्ये, INFORMATION_SCHEMA मध्ये दृश्यांचा एक संच असतो जो sys* डेटाबेस टेबल्सची क्वेरी करतो ज्यामध्ये डेटाबेसच्या संरचनेबद्दल माहिती असते. कोणत्याही डेटाबेस सारणीप्रमाणेच या सारण्यांना थेट क्वेरी करता येते. तथापि, बहुतेक प्रकरणांमध्ये, *sys सारण्यांमधून माहिती पुनर्प्राप्त करण्यासाठी INFORMATION_SCHEMA स्कीमा दृश्ये वापरणे चांगले आहे.
नोंद. INFORMATION_SCHEMA स्कीमा काहीवेळा आवश्यक नसलेल्या सारण्यांसाठी क्वेरी करते, ज्यामुळे कार्यप्रदर्शन दुखावते. या धड्यातील पुढील उदाहरणामध्ये, हे विशेषतः महत्वाचे नाही कारण अनुप्रयोग आधीच वापरकर्त्याच्या इनपुटची वाट पाहत होता. तथापि, आपल्या अनुप्रयोगासाठी वेग हा एक महत्त्वाचा पैलू असल्यास याचा विचार केला पाहिजे.
येथे मूलभूत T-SQL कोड आहे जो टेबल बनवणाऱ्या स्तंभांबद्दल माहिती मिळविण्यासाठी वापरला जातो:
लक्षात ठेवा की टेबलसाठी स्कीमा मिळविण्यासाठी, तुम्ही TABLE_SCHEMA फील्ड निवडणे आवश्यक आहे. भविष्यात तत्सम क्वेरी तयार करण्यासाठी याचा परिणाम होऊ शकतो. या व्याख्यानात वर्णन केलेल्या तंत्रांचा प्रयोग करण्यासाठी, व्हिज्युअल स्टुडिओमध्ये एक नवीन प्रकल्प तयार करा.
सामान्यत:, तुम्हाला वापरकर्त्याला डायनॅमिक क्वेरीसाठी केवळ स्तंभच नव्हे तर सारणी देखील निवडण्याची परवानगी द्यावी लागेल, म्हणून तुम्हाला वापरकर्त्याला सारण्यांची सूची प्रदर्शित करावी लागेल. खालील विनंती वापरून आवश्यक माहिती मिळवता येते:
INFORMATION_SCHEMA.TABLES मधून TABLE_SCHEMA, TABLE_NAME, TABLE_TYPE निवडा
अर्जामध्ये, ही क्वेरी खालीलप्रमाणे वापरली जाऊ शकते.
वरील व्हिज्युअल बेसिक कोड कार्यान्वित करण्यासाठी SQL स्ट्रिंगसह com नावाचा SqlCommand ऑब्जेक्ट सुरू करतो आणि नंतर SqlCommand ऑब्जेक्ट कार्यान्वित करतो. अनुप्रयोगामधून T-SQL स्टेटमेंट कार्यान्वित करण्याचा हा सर्वात सोपा मार्ग आहे.
एक व्यायाम म्हणून, तुम्ही आमच्या फॉर्मच्या लोड प्रक्रियेद्वारे उत्पादित केलेल्या आकृत्या आणि तक्त्या अनुप्रयोगाच्या वापरकर्ता इंटरफेसमध्ये फॉर्म म्हणून ठेवू शकता जेणेकरून वापरकर्ता काम करण्यासाठी आकृती आणि टेबल निवडू शकेल. या व्याख्यानातील उदाहरणासाठी, आम्ही असे गृहीत धरू की वापरकर्त्याने विक्री स्कीमा आणि ग्राहक सारणी निवडली आहे.
एकदा वापरकर्त्याने टेबल निवडल्यानंतर, त्या टेबलसाठी कॉलम्सची सूची क्वेरीमध्ये टेबलचे नाव म्हणून वापरकर्ता इनपुट वापरून, त्याच पद्धतीचा वापर करून पुनर्प्राप्त केली जाऊ शकते. हे करण्यासाठी, तुम्ही क्वेरी स्ट्रिंगमध्ये प्लेसहोल्डर प्रविष्ट करा आणि नंतर त्या प्लेसहोल्डरला String.Format वर कॉल करा. खालील कोडमध्ये, क्वेरी स्ट्रिंगमधील प्लेसहोल्डर (0) आहे.
Sub RetrieveColumns(ByVal TableName as String) MyConnection as New SqlClient.SqlConnection(_ "Data Source=.\SQLExpress;" & _ "प्रारंभिक कॅटलॉग=AdventureWorks;Trusted_Connection=Yes;") स्ट्रिंग म्हणून sqlStr मंद करा, T_SELECTABLESC = T_SELECTABLESC_NAME , COLUMN_NAME, " + _ "ORDINAL_POSITION, DATA_TYPE" + _ "FROM INFORMATION_SCHEMA.COLUMNS" + _ "WHERE (TABLE_NAME = "(0)")" मंद टेबलकॉलम्स नवीन डेटाटेबल म्हणून मंद करा (sqlStr, TableName), MyConnection) da.Fill(tableColumns) साठी i पूर्णांक = 0 ते tableColumns.Rows.Count - 1 tableColumns.Rows.Item(i) Console.WriteLine("(0) (1) (2) सह )", _ .आयटम(1), .आयटम(2), .आयटम(3)) पुढील शेवटी सब सह समाप्त
हा विषय एमएस व्हिज्युअल स्टुडिओ वापरून SQL सर्व्हर प्रकार डेटाबेस तयार करण्याच्या समस्येचे निराकरण दर्शवितो. खालील प्रश्नांचा विचार केला जातो:
एमएस व्हिज्युअल स्टुडिओ टूल्स वापरून, एज्युकेशन नावाचा एमएस एसक्यूएल सर्व्हर प्रकारचा डेटाबेस तयार करा. डेटाबेसमध्ये विद्यार्थी आणि सत्र असे दोन तक्ते आहेत. सारण्या काही फील्डद्वारे एकमेकांशी संबंधित आहेत.
पहिल्या सारणीची रचना “विद्यार्थी”.
दुसऱ्या सारणीची रचना “सत्र”.
डेटाबेससह काम करण्यासाठी, मायक्रोसॉफ्ट लाइटवेट डेटाबेस सर्व्हर, मायक्रोसॉफ्ट एसक्यूएल सर्व्हर ऑफर करते. Microsoft SQL सर्व्हरच्या वेगवेगळ्या आवृत्त्या आहेत, उदाहरणार्थ: Microsoft SQL Server 2005, Microsoft SQL Server 2008, Microsoft SQL Server 2014 आणि इतर आवृत्त्या.
या आवृत्त्या Microsoft वेबसाइट www.msdn.com वरून डाउनलोड केल्या जाऊ शकतात.
डेटाबेससह काम करण्यासाठी हा सर्व्हर उत्तम आहे. हे विनामूल्य आहे आणि SQL सर्व्हर व्यवस्थापन साधन वापरून डेटाबेस तयार आणि प्रशासित करण्यासाठी ग्राफिकल इंटरफेस आहे.
सर्व प्रथम, डेटाबेस तयार करण्यापूर्वी, आपल्याला सर्व्हर एक्सप्लोरर उपयुक्तता सक्रिय करणे आवश्यक आहे. हे करण्यासाठी, एमएस व्हिज्युअल स्टुडिओमध्ये तुम्हाला कॉल करणे आवश्यक आहे (चित्र 1)
पहा -> सर्व्हर एक्सप्लोररतांदूळ. 1. सर्व्हर एक्सप्लोररवर कॉल करा
एकदा कॉल केल्यानंतर, आकृती 2 मध्ये दर्शविल्याप्रमाणे सर्व्हर एक्सप्लोरर विंडोचे अंदाजे स्वरूप असेल.
तांदूळ. 2. सर्व्हर एक्सप्लोरर विंडो
मायक्रोसॉफ्ट एसक्यूएल सर्व्हर डेटा प्रदात्यावर आधारित नवीन डेटाबेस तयार करण्यासाठी, तुम्हाला डेटा कनेक्शन नोडवर क्लिक करणे आवश्यक आहे आणि नंतर “निवडा. नवीन SQL सर्व्हर डेटाबेस तयार करा...(चित्र 3).
तांदूळ. 3. SQL सर्व्हर डेटाबेस निर्मिती आदेशाला कॉल करणे
परिणामी, विंडो " नवीन SQL सर्व्हर डेटाबेस तयार करा"(चित्र 4).
विंडोमध्ये (“सर्व्हर नेम” फील्डमध्ये), आपल्या संगणकावर स्थापित केलेल्या स्थानिक सर्व्हरचे नाव सूचित केले आहे. आमच्या बाबतीत, हे नाव "SQLEXPRESS" आहे.
"नवीन डेटाबेस नाव:" फील्ड तयार होत असलेल्या डेटाबेसचे नाव सूचित करते. आमच्या बाबतीत, हे नाव शिक्षण आहे.
विंडोज ऑथेंटिफिकेशन वापरा पर्याय अपरिवर्तित ठेवला पाहिजे आणि ओके क्लिक करा.
तांदूळ. 4. एमएस व्हिज्युअल स्टुडिओ 2010 वापरून नवीन SQL सर्व्हर 2008 एक्सप्रेस डेटाबेस तयार करा
पायऱ्या पूर्ण केल्यानंतर, सर्व्हर एक्सप्लोरर विंडो आकृती 5 मध्ये दर्शविल्याप्रमाणे फॉर्म घेईल. आकृती 5 वरून, नावासह एज्युकेशन डेटाबेस.
sasha-pc\sqlexpress.Education.dboतांदूळ. 5. एज्युकेशन डेटाबेस जोडल्यानंतर सर्व्हर एक्सप्लोरर विंडो
तुम्ही एज्युकेशन डेटाबेस (“+” चिन्ह) विस्तृत केल्यास, तुम्ही खालील मुख्य वस्तूंची सूची पाहू शकता:
याक्षणी, शैक्षणिक डेटाबेस पूर्णपणे रिकामा आहे आणि त्यात कोणतीही वस्तू (टेबल, संग्रहित प्रक्रिया, दृश्ये इ.) नाहीत.
टेबल तयार करण्यासाठी, तुम्हाला संदर्भ मेनू (उजवे-क्लिक) कॉल करणे आवश्यक आहे आणि "नवीन सारणी जोडा" कमांड निवडा (आकृती 6).
तांदूळ. 6. नवीन टेबल कमांड जोडा
डेटा मेनू कमांड वापरून डेटाबेस टेबल जोडण्यासाठी आणखी एक पर्याय आहे:
डेटा -> नवीन जोडा -> टेबलतांदूळ. 7. नवीन टेबल जोडण्यासाठी पर्यायी पर्याय
परिणामी, ऍड टेबल विंडो उघडेल, ज्यामध्ये तीन स्तंभ आहेत (आकृती 8). पहिल्या स्तंभात “स्तंभाचे नाव” तुम्हाला डेटाबेस टेबलमधील संबंधित फील्डचे नाव प्रविष्ट करणे आवश्यक आहे. दुसऱ्या स्तंभात “डेटा प्रकार” तुम्हाला या फील्डचा डेटा प्रकार प्रविष्ट करणे आवश्यक आहे. तिसरा कॉलम “Allow Nulls” फील्डमधील डेटा गहाळ होण्याच्या शक्यतेचा पर्याय सूचित करतो.
तांदूळ. 8. नवीन टेबल निर्मिती विंडो
टेबल एडिटर वापरून, तुम्हाला आकृती 9 मध्ये दाखवल्याप्रमाणे स्टुडंट टेबल तयार करणे आवश्यक आहे. ते बंद करताना टेबलचे नाव नमूद करणे आवश्यक आहे.
टेबल एडिटरमध्ये, तुम्ही कॉलम प्रॉपर्टीज विंडोमध्ये फील्ड गुणधर्म सेट करू शकता. अक्षरांमध्ये स्ट्रिंगची लांबी (nvchar) सेट करण्यासाठी, स्तंभ गुणधर्म विंडोमध्ये एक लांबी गुणधर्म आहे. या मालमत्तेसाठी डीफॉल्ट मूल्य 10 आहे.
तांदूळ. 9. विद्यार्थी टेबल
पुढची पायरी म्हणजे की फील्ड सेट करणे. हे Num_book फील्डच्या संदर्भ मेनूमधून "प्राथमिक की सेट करा" कमांडला कॉल करून केले जाते. की फील्ड वापरून, टेबलमधील संबंध स्थापित केले जातील. आमच्या बाबतीत, मुख्य फील्ड ग्रेडबुक क्रमांक आहे.
तांदूळ. 10. की फील्ड सेट करणे
प्राथमिक की सेट केल्यानंतर, टेबल विंडो आकृती 11 मध्ये दर्शविल्याप्रमाणे दिसेल.
तांदूळ. 11. अंतिम निर्मितीनंतर विद्यार्थी तक्ता
आता आपण टेबल बंद करू शकता. टेबल सेव्ह करण्यासाठी विंडोमध्ये, तुम्हाला त्याचे नाव - विद्यार्थी (चित्र 12) सेट करणे आवश्यक आहे.
तांदूळ. 12. टेबलचे नाव विद्यार्थी प्रविष्ट करणे
विद्यार्थी सारणी तयार करण्याच्या उदाहरणाचे अनुसरण करून, सत्र सारणी तयार केली आहे.
आकृती 13 अंतिम निर्मितीनंतर सत्र सारणी दर्शवते. प्राथमिक की Num_book फील्डमध्ये सेट केली आहे. टेबलचे नाव सत्राद्वारे दिले जाते.
तांदूळ. 13. सत्र सारणी
चरण पूर्ण केल्यानंतर, सर्व्हर एक्सप्लोरर विंडोमध्ये विद्यार्थी आणि सत्र या दोन टेबल्स प्रदर्शित होतील.
अशा प्रकारे, डेटाबेसमध्ये कितीही तक्ते जोडता येतात.
असे काही वेळा असतात जेव्हा तुम्हाला डेटाबेस टेबलची रचना बदलण्याची आवश्यकता असते.
एमएस व्हिज्युअल स्टुडिओमधील डेटाबेस टेबलमध्ये बदल करण्यासाठी, तुम्हाला प्रथम "बदल जतन करणे प्रतिबंधित करा" पर्याय अनचेक करणे आवश्यक आहे. ज्यासाठी टेबल पुन्हा तयार करणे आवश्यक आहेआकृती 14 मध्ये दर्शविल्याप्रमाणे. अन्यथा, MS Visual Studio पूर्वी तयार केलेल्या टेबलमधील बदल अवरोधित करेल. आकृती 14 मध्ये दर्शविलेल्या पर्याय विंडोला खालील क्रमाने टूल्स मेनूमधून कॉल केले आहे:
साधने -> पर्याय -> डेटाबेस साधने -> टेबल आणि डेटाबेस डिझाइनरतांदूळ. 14. पर्याय “ सारणी पुन्हा तयार करणे आवश्यक असलेले बदल जतन करणे प्रतिबंधित करा”
एकदा कॉन्फिगर केल्यावर, तुम्ही टेबलची रचना बदलू शकता. हे करण्यासाठी, संदर्भ मेनूमधून "ओपन टेबल डेफिनिशन" कमांड (आकृती 15) वापरा, जी निवडलेल्या टेबलसाठी कॉल केली जाते (उजवे क्लिक).
तांदूळ. 15. "ओपन टेबल डेफिनिशन" कमांडला कॉल करणे
ही आज्ञा डेटा मेनूमध्ये देखील आहे:
डेटा -> टेबल व्याख्या उघडाटेबल प्रथम निवडणे आवश्यक आहे.
समस्येच्या अटींनुसार, Num_book फील्डद्वारे टेबल एकमेकांशी जोडलेले आहेत.
सारण्यांमध्ये संबंध निर्माण करण्यासाठी, आपल्याला प्रथम आवश्यक आहे (आकृती 16):
तांदूळ. 16. नवीन आकृती जोडण्यासाठी कमांडला कॉल करणे
परिणामी, नवीन जोडा सारणी आकृती जोडण्यासाठी एक विंडो उघडेल (आकृती 17). या विंडोमध्ये, तुम्हाला अनुक्रमे सत्र आणि विद्यार्थी दोन तक्ते निवडून Add बटणावर क्लिक करावे लागेल.
तांदूळ. 17. आकृतीमध्ये टेबल जोडण्यासाठी विंडो
तांदूळ. 18. आकृतीमध्ये जोडल्यानंतर विद्यार्थी आणि सत्र तक्ते
टेबलांमधील संबंध प्रस्थापित करण्यासाठी, तुम्हाला स्टुडंट टेबलच्या Num_book फील्डवर क्लिक करावे लागेल आणि नंतर (माऊस बटण न सोडता) ते सत्र टेबलच्या Num_book फील्डवर ड्रॅग करावे लागेल.
परिणामी, दोन विंडो क्रमशः उघडतील: टेबल्स आणि कॉलम्स (Fig. 19) आणि फॉरेन की रिलेशनशिप (Fig. 20), ज्यामध्ये तुम्हाला सर्वकाही जसे आहे तसे सोडणे आवश्यक आहे आणि ओके सह तुमच्या निवडीची पुष्टी करणे आवश्यक आहे.
टेबल्स आणि कॉलम्स विंडोमध्ये, तुम्ही रिलेशनशिपचे नाव (FK_Session_Student) आणि पालक (विद्यार्थी) आणि मुलांच्या टेबल्सची नावे निर्दिष्ट करता.
तांदूळ. 19. टेबल्स आणि कॉलम्स विंडो
तांदूळ. 20. संबंध गुणधर्म सेट करण्यासाठी विंडो
पूर्ण झालेल्या कृतींनंतर, सारण्यांमधील संबंध स्थापित केला जाईल (आकृती 21).
तांदूळ. 21. विद्यार्थी आणि सत्र सारणी यांच्यातील संबंध
आकृती जतन करणे टेबल जतन करण्यासारखेच केले जाते. आकृतीचे नाव आपल्या विवेकबुद्धीनुसार निवडले जाणे आवश्यक आहे (उदाहरणार्थ, आकृती1).
आकृतीचे नाव निर्दिष्ट केल्यानंतर, सेव्ह विंडो उघडेल, ज्यामध्ये तुम्हाला तुमच्या निवडीची पुष्टी करणे आवश्यक आहे (आकृती 22).
तांदूळ. 22. टेबलमधील बदल जतन केल्याची पुष्टी
मायक्रोसॉफ्ट व्हिज्युअल स्टुडिओ तुम्हाला डेटाबेस टेबलमध्ये थेट डेटा प्रविष्ट करण्याची परवानगी देतो.
आमच्या बाबतीत, कनेक्शन स्थापित करताना (चित्र 19), विद्यार्थी सारणी प्राथमिक की सारणी म्हणून निवडली जाते. म्हणून, आपल्याला प्रथम या विशिष्ट सारणीच्या सेलमध्ये डेटा प्रविष्ट करणे आवश्यक आहे. आपण प्रथम सत्र सारणीमध्ये डेटा प्रविष्ट करण्याचा प्रयत्न केल्यास, सिस्टम असे इनपुट अवरोधित करेल आणि संबंधित संदेश प्रदर्शित करेल.
स्टुडंट टेबलमध्ये डेटा एंटर करण्यासाठी मोड कॉल करण्यासाठी, तुम्हाला कॉन्टेक्ट मेनूमधून (राइट-क्लिक) किंवा डेटा मेन्यू (चित्र 23) मधून टेबल डेटा दाखवा कमांड कॉल करणे आवश्यक आहे.
तांदूळ. 23. टेबल डेटा कमांड दाखवा
एक विंडो उघडेल ज्यामध्ये आपल्याला इनपुट डेटा प्रविष्ट करणे आवश्यक आहे (चित्र 24).
तांदूळ. 24. विद्यार्थी तक्त्यामध्ये डेटा प्रविष्ट करणे
विद्यार्थी सारणीमध्ये डेटा प्रविष्ट केल्यानंतर, आपल्याला सत्र सारणीमध्ये डेटा प्रविष्ट करणे आवश्यक आहे.
सत्र सारणीच्या Num_book फील्डमध्ये डेटा प्रविष्ट करताना, आपण विद्यार्थी टेबलच्या Num_book फील्डमध्ये प्रविष्ट केलेली समान मूल्ये प्रविष्ट करणे आवश्यक आहे (कारण ही फील्ड एकमेकांशी संबंधित आहेत).
उदाहरणार्थ, स्टुडंट टेबलच्या Num_book फील्डमध्ये मूल्ये प्रविष्ट केली असल्यास “101”, “102”, “103” (चित्र 24 पहा), नंतर ही मूल्ये सत्र सारणीच्या Num_book फील्डमध्ये प्रविष्ट केली जावीत. आपण भिन्न मूल्य प्रविष्ट करण्याचा प्रयत्न केल्यास, सिस्टम अंदाजे खालील विंडो प्रदर्शित करेल (चित्र 25).
तांदूळ. 25. लिंक केलेल्या विद्यार्थी आणि सत्र सारण्यांसाठी डेटा एंट्रीबद्दल त्रुटी संदेश
प्रविष्ट केलेल्या डेटासह सत्र सारणी आकृती 26 मध्ये दर्शविली आहे.
या लेखात, तुम्ही LINQ म्हणजे काय आणि ते वापरून सूचीची चौकशी कशी करावी हे शिकाल.
LINQ म्हणजे काय? Language Integrated Query (LINQ) ही एकात्मिक क्वेरी भाषा आहे, किंवा SQL सारखी क्वेरी भाषा वाक्यरचना जोडण्यासाठी एक विवादास्पद Microsoft प्रकल्प आहे. विशिष्ट व्याख्या, या साधनाद्वारे तुम्ही सारण्यांच्या आणि डेटाच्या सूचींबद्दल तुलनेने सहजपणे क्वेरी तयार करू शकता, डेटाबेस आवश्यक नाही.
मायक्रोसॉफ्टच्या उदाहरणांमध्ये एक लहान पण महत्त्वाचा तपशील चुकतो. डेटा सेटसह कार्य करण्यासाठी, आम्हाला DataContext रचना वापरण्याची आवश्यकता आहे, ज्याची व्याख्या शेअरपॉईंट सर्व्हरवर असलेल्या सूची किंवा लायब्ररीसाठी SPMetal.exe वापरून मिळवता येते. दुसऱ्या शब्दांत, आम्हाला प्रथम हा डेटा प्रकार परिभाषित करणे आवश्यक आहे, आणि नंतर एक क्वेरी तयार करा सर्वसाधारणपणे, मी MVS मध्ये काम करण्यासाठी एक विशेष उपयुक्तता वापरण्याची शिफारस करतो: Imtech Get SPMetal Definition Extension.
कार्य करण्यासाठी, आम्हाला काही प्रकारची यादी आवश्यक आहे. चला एक साधी यादी वापरू - "सानुकूल सूची"; शीर्षक - "साधे अपील"; डीफॉल्ट फील्ड: संख्या, शीर्षक.
आणि म्हणून, एक साधे तयार करूया (संबंधित पृष्ठ पहा), ज्याच्या मदतीने आपण आपल्या हाताळणीचे परिणाम पाहू. प्रकल्प तयार करताना, आम्ही एक वेगळे ट्रस्ट मॉडेल निवडू; जर इतर नोड्सच्या सूची किंवा डेटासह कार्य करण्याची आवश्यकता असेल, तर तुम्हाला फार्मसाठी एक प्रकल्प तयार करणे आवश्यक आहे.
पुढे, SPMetal.exe किंवा स्टुडिओसाठी प्लगइन वापरून "SimpleInversion.cs" फाईल वर्ग तयार करू. चला Microsoft.Sharepoint.Linq लायब्ररीची लिंक जोडूया. अधिक माहिती MSDN वेबसाइटवर मिळू शकते.
रेंडर फंक्शन आणि my_mess तयार करू. शेवटच्या फंक्शनमध्ये आपण डिस्प्लेसाठी डेटा जनरेट करू.
// फंक्शन ओव्हरलोड करा
संरक्षित ओव्हरराइड शून्य रेंडर (HtmlTextWriter लेखक)
{
आधार .रेंडर (लेखक);
my_mess(लेखक);
}// सूचीसह कार्य करण्यासाठी आमचे कार्य
सार्वजनिक शून्य my_mess(HtmlTextWriter लेखक)
{
// संदर्भ तयार करा
DataContext डेटा = नवीन DataContext("http://localhost");
// रूटमधील साइटवरील संबंधित सूचीशी लिंक करा
अस्तित्व सूची<Элемент>साधा_संदेश = डेटा.GetList<Элемент>("साधे आवाहन");
// विनंती कार्यान्वित करा - "साधी विनंती" सूचीमधून सर्व ओळी निवडा
var क्वेरी = सिंपल_मेसेजमधील गोंधळातून
गोंधळ निवडा;
// क्वेरी परिणामातील सर्व डेटा प्रदर्शित करा
foreach (क्वेरीमधील var घटक)
{
writer.WriteLine( "सूची आयटम:"+ elem.Name.ToString());
writer.WriteBreak();
}}
आम्ही प्रकल्प संकलित करतो आणि त्यास पृष्ठावर जोडतो. परिणामी, सूचीतील सर्व ओळी प्रदर्शित केल्या जातील.
पुढे चालू ठेवायचे (लेख संपला नाही)...
सर्व्हर एक्सप्लोरर विंडोमध्ये, जिथे मायक्रोसॉफ्ट एसक्यूएल सर्व्हरवरील डेटाबेस टेबल्स झाडाच्या स्वरूपात सादर केल्या जातात (चित्र 4.1 पहा.), तुम्ही टेबल डेटा दाखवा बटणावर क्लिक करून प्रत्येक टेबलसाठी विंडो उघडू शकता. या विंडोमध्ये तुम्ही टेबल डेटा संपादित करू शकता. ही संपादन विंडो अंजीर मध्ये दर्शविल्याप्रमाणे अंदाजे दिसते. ४.२. अंदाजे, मोठ्या संख्येने स्तंभांमुळे आकृतीमध्ये पूर्ण खंड समाविष्ट केला गेला नाही.
डेटाबेस आणि सर्व्हरवरील अनावश्यक कॉल्स दूर करण्यासाठी डेटाबेस मॅपिंग (डेटासेट घटक) आवश्यक आहे. हे एक अतिशय महत्त्वाचे वैशिष्ट्य आहे, कारण जर अनेक वापरकर्ते डेटाबेससह कार्य करतात, तर सर्व्हरवरील भार बराच मोठा असू शकतो - विनंत्यांची संख्या अनेक पटींनी जास्त आहे, ज्यामुळे विनंत्यांची अंमलबजावणी कमी होईल.
म्हणून, डेटासेटमुळे, क्लायंटचा संगणक डेटाबेस प्रदर्शित करतो ज्यासह तो कार्य करतो. काम पूर्ण झाल्यावर, क्लायंट आणि सर्व्हर डेटाबेस सिंक्रोनाइझ केले जातात (किंवा त्याऐवजी, क्लायंट डेटाबेसमध्ये केलेले बदल सर्व्हर डेटाबेसमध्ये केले जातात)
MS Visual Studio 2005 वरील आमच्या डेटाबेसचे प्रदर्शन असे दिसते:
सर्व अंकीय डेटा Int32 प्रकारचा आहे, स्ट्रिंग डेटा स्ट्रिंग आहे. स्ट्रिंग डेटा आकार भौतिक डेटाबेस मॉडेलमध्ये दिलेल्या आकारांशी संबंधित आहेत.
स्क्रीनशॉट दर्शवितो की प्रत्येक टेबलमध्ये TableAdapters देखील आहेत. डेटासेट आणि डेटा स्रोत जोडण्यासाठी हे एक प्रकारचे पूल आहेत. Fill आणि GetData() सारख्या पद्धती आहेत
ही पद्धत स्रोत (डेटाबेस फाइल) कडून आवश्यक डेटासह टेबल भरण्यासाठी डिझाइन केली आहे.
GetData() पद्धत
मॅपिंग टेबलवरून डेटा घेण्यासाठी डिझाइन केलेले.
सॉफ्टवेअरच्या अंमलबजावणीतील मुख्य वैशिष्ट्य म्हणजे डेटाबेस सारण्या संपादित करण्यासाठी जबाबदार असलेले सर्व वर्ग एका बेस क्लासकडून वारशाने मिळाले आहेत, ज्यामुळे अंमलबजावणी सुलभ होते. या बेस क्लासच्या पद्धती वर वर्णन केल्या आहेत. मूळ वर्गाच्या आभासी पद्धती वंशज वर्गात अधिलिखित केल्या पाहिजेत. या सर्व पद्धती तुम्हाला फॉर्म हेडरचे नाव, इच्छित डेटाबेस टेबल भरणे आणि सेव्ह करणे यासारखे पॅरामीटर्स बदलण्याची परवानगी देतात (डेटा संपादित करण्याच्या अर्थाने एक वंशज वर्ग केवळ एका टेबलसह कार्य करतो; तथापि, वापरकर्त्यास डेटा प्रदर्शित करताना, वापरकर्त्याला समजेल अशा फॉर्ममध्ये डेटा प्रदर्शित करण्यासाठी अनेक डेटाबेस टेबल्स वापरणे शक्य आहे).
मुख्य विंडो एक MDI अनुप्रयोग आहे ज्यामध्ये खालील मेनू आहे:
डेटाबेस संपादित करण्यासाठी प्रत्येक सारणी संबंधित "टेबल" मेनू आयटमद्वारे कॉल केली जाते.
संबंधित “अहवाल” मेनू आयटमवर क्लिक करून शिक्षकांवरील कार्यभाराचा अहवाल देखील तयार केला जातो.
सॉफ्टवेअरचे अतिरिक्त वैशिष्ट्य म्हणून, "कन्सोल" मेनू आयटम आहे, जो तुम्हाला वापरकर्त्याने प्रविष्ट केलेल्या डेटाबेसमध्ये SQL क्वेरी कार्यान्वित करण्यास आणि टेबलमध्ये (डेटाटेबल घटक) प्रदर्शित करण्यास अनुमती देतो. हे करण्यासाठी, अर्थातच, आपल्याला सारण्या आणि फील्डची नावे माहित असणे आवश्यक आहे आणि हे मुख्यतः सॉफ्टवेअर लागू करण्याच्या सोयीसाठी तयार केले गेले आहे, परंतु इतर "समर्पित" वापरकर्ते देखील याचा लाभ घेऊ शकतात.