C # डेटाबेस कनेक्शन: SQL सर्वर कैसे कनेक्ट करें (उदाहरण)

विषय - सूची:

Anonim

डेटाबेस से डेटा एक्सेस करना किसी भी प्रोग्रामिंग भाषा के महत्वपूर्ण पहलुओं में से एक है। किसी भी प्रोग्रामिंग भाषा के लिए डेटाबेस के साथ काम करने की क्षमता होना एक परम आवश्यकता है। C # अलग नहीं है।

यह विभिन्न प्रकार के डेटाबेस के साथ काम कर सकता है। यह ओरेकल और माइक्रोसॉफ्ट SQL सर्वर जैसे सबसे सामान्य डेटाबेस के साथ काम कर सकता है।

यह MongoDB और MySQL जैसे डेटाबेस के नए रूपों के साथ भी काम कर सकता है।

इस C # sql कनेक्शन ट्यूटोरियल में, आप सीखेंगे-

  • डेटाबेस कनेक्टिविटी के बुनियादी ढांचे
  • डेटाबेस से C # कैसे कनेक्ट करें
  • SqlDataReader के साथ एक्सेस डेटा
  • डेटाबेस में C # डालें
  • अभिलेखों को अद्यतन करना
  • रिकॉर्ड हटाना
  • नियंत्रण को डेटा से जोड़ना
  • C # DataGridView

डेटाबेस कनेक्टिविटी के बुनियादी ढांचे

C # और .Net अधिकांश डेटाबेस के साथ काम कर सकते हैं, जो सबसे आम है Oracle और Microsoft SQL सर्वर। लेकिन हर डेटाबेस के साथ, उन सभी के साथ काम करने के पीछे तर्क ज्यादातर एक ही है।

हमारे उदाहरण में, हम Microsoft SQL सर्वर को हमारे डेटाबेस के रूप में काम करते हुए देखेंगे। सीखने के उद्देश्यों के लिए, कोई Microsoft SQL सर्वर एक्सप्रेस संस्करण डाउनलोड और उपयोग कर सकता है , जो Microsoft द्वारा प्रदान किया गया एक निशुल्क डेटाबेस सॉफ्टवेयर है।

डेटाबेस के साथ काम करने में, निम्नलिखित अवधारणाएं हैं जो सभी डेटाबेस के लिए सामान्य हैं।

  1. कनेक्शन - एक डेटाबेस में डेटा के साथ काम करने के लिए, पहला स्पष्ट कदम कनेक्शन है। एक डेटाबेस के लिए कनेक्शन सामान्य रूप से नीचे उल्लेखित मापदंडों के होते हैं।
    1. डेटाबेस का नाम या डेटा स्रोत - पहला महत्वपूर्ण पैरामीटर डेटाबेस का नाम है जिसके लिए कनेक्शन स्थापित करने की आवश्यकता है। प्रत्येक कनेक्शन एक समय में केवल एक डेटाबेस के साथ काम कर सकता है।
    2. क्रेडेंशियल - अगला महत्वपूर्ण पहलू उपयोगकर्ता नाम और पासवर्ड है जिसका उपयोग डेटाबेस से कनेक्शन स्थापित करने के लिए किया जाना चाहिए। यह सुनिश्चित करता है कि उपयोगकर्ता नाम और पासवर्ड डेटाबेस से जुड़ने के लिए आवश्यक विशेषाधिकार हैं।
    3. वैकल्पिक पैरामीटर - प्रत्येक डेटाबेस प्रकार के लिए, आप वैकल्पिक पैरामीटर निर्दिष्ट कर सकते हैं कि कैसे .net डेटाबेस से कनेक्शन को संभालना चाहिए। उदाहरण के लिए, कोई पैरामीटर निर्दिष्ट कर सकता है कि कनेक्शन कितने समय तक सक्रिय रहना चाहिए। यदि किसी विशेष अवधि के लिए कोई ऑपरेशन नहीं किया जाता है, तो पैरामीटर यह निर्धारित करेगा कि क्या कनेक्शन बंद करना है।
  2. डेटाबेस से डेटा का चयन - एक बार कनेक्शन स्थापित हो जाने के बाद, अगला महत्वपूर्ण पहलू डेटाबेस से डेटा प्राप्त करना है। C # डेटाबेस के विरुद्ध 'SQL' सेलेक्ट कमांड को निष्पादित कर सकता है। डेटाबेस में एक विशिष्ट तालिका से डेटा लाने के लिए 'एसक्यूएल' स्टेटमेंट का उपयोग किया जा सकता है।
  3. डेटाबेस में डेटा सम्मिलित करना - C # का उपयोग डेटाबेस में रिकॉर्ड डालने के लिए भी किया जा सकता है। डेटाबेस में सम्मिलित करने के लिए प्रत्येक पंक्ति के लिए मान C # में निर्दिष्ट किए जा सकते हैं।
  4. डेटाबेस में डेटा अपडेट करना - C # का उपयोग डेटाबेस में मौजूदा रिकॉर्ड को अपडेट करने के लिए भी किया जा सकता है। डेटाबेस में अद्यतन करने के लिए आवश्यक प्रत्येक पंक्ति के लिए नए मान C # में निर्दिष्ट किए जा सकते हैं।
  5. डेटाबेस से डेटा हटाना - C # का उपयोग डेटाबेस में रिकॉर्ड को हटाने के लिए भी किया जा सकता है। यह निर्दिष्ट करने के लिए कमांड का चयन करें कि किन पंक्तियों को हटाने की आवश्यकता है C # में निर्दिष्ट किया जा सकता है।

ठीक है, अब जब हमने प्रत्येक ऑपरेशन के सिद्धांत को देखा है, तो हम C # में डेटाबेस संचालन कैसे कर सकते हैं, यह देखने के लिए आगे के खंडों में कूदते हैं।

C # में SQL कमांड

C # में SqlCommand उपयोगकर्ता को डेटाबेस में क्वेरी और कमांड भेजने की अनुमति देता है। SQL कमांड SQL कनेक्शन ऑब्जेक्ट द्वारा निर्दिष्ट किया गया है। दो विधियों का उपयोग किया जाता है, क्वेरी के परिणामों के लिए ExecuteReader विधि और सम्मिलित करें, अद्यतन और आदेशों को हटाने के लिए ExecuteNonQuery। यह अलग-अलग कमांड के लिए सबसे अच्छा तरीका है।

डेटाबेस से C # कैसे कनेक्ट करें

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

  • उपयोगकर्ता नाम - सा
  • पासवर्ड - Demo123

हम डेटाबेस के साथ काम करने के लिए एक साधारण विंडोज फॉर्म एप्लीकेशन देखेंगे। हमारे पास "कनेक्ट" नामक एक सरल बटन होगा जिसका उपयोग डेटाबेस से कनेक्ट करने के लिए किया जाएगा।

तो चलिए इसे प्राप्त करने के लिए नीचे दिए गए चरणों का पालन करें

चरण 1) पहले चरण में विजुअल स्टूडियो में एक नई परियोजना का निर्माण शामिल है। Visual Studio लॉन्च करने के बाद, आपको मेनू विकल्प New-> Project को चुनना होगा।

चरण 2) अगला चरण विंडोज फॉर्म एप्लिकेशन के रूप में प्रोजेक्ट प्रकार चुनना है। यहां, हमें अपनी परियोजना के नाम और स्थान का भी उल्लेख करना होगा।

  1. प्रोजेक्ट डायलॉग बॉक्स में, हम विजुअल स्टूडियो में विभिन्न प्रकार के प्रोजेक्ट बनाने के लिए विभिन्न विकल्प देख सकते हैं। बाईं ओर स्थित विंडोज विकल्प पर क्लिक करें।
  2. जब हम पिछले चरण में विंडोज विकल्पों पर क्लिक करते हैं, तो हम विंडोज फॉर्म एप्लीकेशन के लिए एक विकल्प देख पाएंगे। इस विकल्प पर क्लिक करें।
  3. फिर हम उस एप्लिकेशन के लिए एक नाम देते हैं जो हमारे मामले में "डेमोऐप्लिकेशन" है। हमें अपने एप्लिकेशन को संग्रहीत करने के लिए एक स्थान प्रदान करना होगा।
  4. अंत में, हम Visual Studio को अपना प्रोजेक्ट बनाने के लिए 'ओके' बटन पर क्लिक करते हैं।

चरण 3) अब टूलबॉक्स से विंडोज फॉर्म में एक बटन जोड़ें। बटन की टेक्स्ट प्रॉपर्टी को कनेक्ट के रूप में रखें। इस तरह दिखेगा

चरण 4) अब फॉर्म पर डबल क्लिक करें ताकि बटन क्लिक करने की घटना के लिए एक ईवेंट हैंडलर कोड में जोड़ा जाए। ईवेंट हैंडलर में, नीचे दिया गया कोड जोड़ें।

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Data.SqlClient;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace DemoApplication1{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void button1_Click(object sender, EventArgs e){string connetionString;SqlConnection cnn;connetionString = @"Data Source=WIN-50GP30FGO75;Initial Catalog=Demodb;User ID=sa;Password=demol23";cnn = new SqlConnection(connetionString);cnn.Open();MessageBox.Show("Connection Open !");cnn.Close();}}}

कोड स्पष्टीकरण: -

  1. पहला चरण चर बनाने के लिए है, जिसका उपयोग कनेक्शन स्ट्रिंग और SQL सर्वर डेटाबेस से कनेक्शन बनाने के लिए किया जाएगा।
  2. अगला चरण कनेक्शन स्ट्रिंग बनाने के लिए है। कनेक्शन स्ट्रिंग को समझने के लिए कनेक्टिंग स्ट्रिंग को C # के लिए सही ढंग से निर्दिष्ट करने की आवश्यकता है। कनेक्शन स्ट्रिंग में निम्न भाग होते हैं
    1. डेटा स्रोत - यह उस सर्वर का नाम है जिस पर डेटाबेस रहता है। हमारे मामले में, यह जीत- 50GP30FGO75 नामक मशीन पर रहता है।
    2. डेटाबेस के नाम को निर्दिष्ट करने के लिए प्रारंभिक कैटलॉग का उपयोग किया जाता है
    3. उपयोगकर्ता और पासवर्ड डेटाबेस से जुड़ने के लिए आवश्यक क्रेडेंशियल हैं।
  3. अगला, हम कनेक्टिंग स्ट्रिंग को वेरिएबल cnn में असाइन करते हैं। चर cnn, जो SqlConnection प्रकार का होता है, का उपयोग डेटाबेस से कनेक्शन स्थापित करने के लिए किया जाता है।
  4. अगला, हम डेटाबेस से कनेक्शन खोलने के लिए cnn वैरिएबल की ओपन विधि का उपयोग करते हैं। हम तब उपयोगकर्ता को एक संदेश प्रदर्शित करते हैं कि कनेक्शन स्थापित है।
  5. एक बार जब ऑपरेशन सफलतापूर्वक पूरा हो जाता है, तो हम डेटाबेस से कनेक्शन बंद कर देते हैं। डेटाबेस से कनेक्शन को बंद करने के लिए हमेशा एक अच्छा अभ्यास है अगर डेटाबेस पर कुछ और करने की आवश्यकता नहीं है।

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

आउटपुट: -

जब आप आउटपुट से "कनेक्ट" बटन पर क्लिक करते हैं, तो आप देख सकते हैं कि डेटाबेस कनेक्शन स्थापित किया गया था। इसलिए, संदेश बॉक्स प्रदर्शित किया गया था।

SqlDataReader के साथ एक्सेस डेटा

यह दिखाने के लिए कि C # का उपयोग करके डेटा को कैसे एक्सेस किया जा सकता है, आइए मान लें कि हमारे डेटाबेस में निम्नलिखित कलाकृतियाँ हैं।

  1. एक टेबल जिसे डेमोटब कहा जाता है। इस तालिका का उपयोग विभिन्न ट्यूटोरियल के आईडी और नामों को संग्रहीत करने के लिए किया जाएगा।
  2. तालिका में 2 कॉलम होंगे, एक को "ट्यूटोरियलआईडी" और दूसरे को "ट्यूटोरियलनेम" कहा जाता है।
  3. फिलहाल, तालिका में 2 पंक्तियाँ होंगी जैसा कि नीचे दिखाया गया है।

ट्यूटोरियल

TutorialName

1

सी#

ASP। नेट

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

चरण 1) आइए कोड को 2 भागों में विभाजित करें ताकि उपयोगकर्ता के लिए समझना आसान हो जाए।

  • सबसे पहले हमारे "चयन" कथन का निर्माण होगा, जिसका उपयोग डेटाबेस से डेटा पढ़ने के लिए किया जाएगा।
  • हम तब डेटाबेस के खिलाफ "चयन" कथन को निष्पादित करेंगे और तदनुसार सभी तालिका पंक्तियों को प्राप्त करेंगे।

कोड स्पष्टीकरण: -

  1. पहला कदम निम्नलिखित चर बनाना है
    1. SQLCommand - 'SQLCommand' C # के भीतर परिभाषित एक वर्ग है। इस वर्ग का उपयोग डेटाबेस में पढ़ने और लिखने के संचालन को करने के लिए किया जाता है। इसलिए, पहला कदम यह सुनिश्चित करना है कि हम इस वर्ग का एक परिवर्तनशील प्रकार बनाते हैं। यह चर हमारे डेटाबेस से डेटा पढ़ने के बाद के चरणों में उपयोग किया जाएगा।
    2. DataReader ऑब्जेक्ट का उपयोग SQL क्वेरी द्वारा निर्दिष्ट सभी डेटा को प्राप्त करने के लिए किया जाता है। हम डेटा रीडर का उपयोग करके एक-एक करके सभी तालिका पंक्तियों को पढ़ सकते हैं।
    3. फिर हम 2 स्ट्रिंग वेरिएबल को परिभाषित करते हैं, एक हमारी SQL कमांड स्ट्रिंग को पकड़ने के लिए "SQL" है। अगला "आउटपुट" है जिसमें सभी तालिका मान होंगे।
  2. अगला कदम SQL स्टेटमेंट को परिभाषित करना है, जिसका उपयोग हमारे डेटाबेस के खिलाफ किया जाएगा। हमारे मामले में, यह "सिलेक्ट ट्यूटोरियलआईडी, ट्यूटोरियलनाम से डेमोटब" है। यह तालिका demotb से सभी पंक्तियों को लाएगा।
  3. अगला, हम कमांड ऑब्जेक्ट बनाते हैं जो डेटाबेस के खिलाफ SQL स्टेटमेंट को निष्पादित करने के लिए उपयोग किया जाता है। SQL कमांड में, आपको कनेक्शन ऑब्जेक्ट और SQL स्ट्रिंग को पास करना होगा।
  4. इसके बाद, हम डेटा रीडर कमांड को निष्पादित करेंगे, जो डीमैट टेबल से सभी पंक्तियों को लाएगा।
  5. अब जब हमारे पास तालिका की सभी पंक्तियां हैं, तो हमें एक-एक करके पंक्ति तक पहुंचने के लिए एक तंत्र की आवश्यकता है। इसके लिए हम कथन का उपयोग करेंगे। जबकि कथन का उपयोग डेटा रीडर से पंक्तियों को एक बार में एक्सेस करने के लिए किया जाएगा। हम तब TutorialV और TutorialName का मान प्राप्त करने के लिए GetValue विधि का उपयोग करते हैं।

चरण 2) अंतिम चरण में, हम केवल उपयोगकर्ता को आउटपुट प्रदर्शित करेंगे और डेटाबेस ऑपरेशन से संबंधित सभी वस्तुओं को बंद कर देंगे।

कोड स्पष्टीकरण: -

  1. हम संदेश बॉक्स का उपयोग करके आउटपुट चर का मान प्रदर्शित करके अपना कोड जारी रखेंगे। आउटपुट चर में डेमोट टेबल से सभी मान शामिल होंगे।
  2. हम अंत में अपने डेटाबेस ऑपरेशन से संबंधित सभी वस्तुओं को बंद कर देते हैं। याद रखें यह हमेशा एक अच्छा अभ्यास है।

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

आउटपुट: -

आउटपुट से, आप स्पष्ट रूप से देख सकते हैं कि प्रोग्राम डेटाबेस से मान प्राप्त करने में सक्षम था। फिर डेटा को संदेश बॉक्स में प्रदर्शित किया जाता है।

डेटाबेस में C # डालें

डेटा तक पहुँचने की तरह, C # डेटाबेस में भी रिकॉर्ड डालने की क्षमता रखता है। यह दिखाने के लिए कि हमारे डेटाबेस में रिकॉर्ड कैसे डालें, चलो उसी टेबल संरचना को लेते हैं जो ऊपर उपयोग की गई थी।

ट्यूटोरियल

TutorialName

1

सी#

ASP। नेट

कोड को हमारे रूप में बदलते हैं, ताकि हम निम्नलिखित पंक्ति को तालिका में सम्मिलित कर सकें

ट्यूटोरियल

TutorialName

VB.Net

तो चलिए हमारे प्रोग्राम में निम्नलिखित कोड जोड़ते हैं। हमारे डेटाबेस में मौजूदा रिकॉर्ड डालने के लिए नीचे दिए गए कोड स्निपेट का उपयोग किया जाएगा।

कोड स्पष्टीकरण: -

  1. पहला कदम निम्नलिखित चर बनाना है
    1. SQLCommand - इस डेटा प्रकार का उपयोग उन वस्तुओं को परिभाषित करने के लिए किया जाता है जिनका उपयोग किसी डेटाबेस के खिलाफ SQL ऑपरेशन करने के लिए किया जाता है। यह ऑब्जेक्ट SQL कमांड रखेगा जो हमारे SQL सर्वर डेटाबेस के खिलाफ चलेगा।
    2. डेटा एडेप्टर ऑब्जेक्ट का उपयोग विशिष्ट SQL ऑपरेशन जैसे डालने, हटाने और कमांड को अपडेट करने के लिए किया जाता है।
    3. हम फिर एक स्ट्रिंग चर को परिभाषित करते हैं, जो हमारे एसक्यूएल कमांड स्ट्रिंग को पकड़ने के लिए "एसक्यूएल" है।
  2. अगला कदम वास्तव में SQL स्टेटमेंट को परिभाषित करना है जिसका उपयोग हमारे डेटाबेस के खिलाफ किया जाएगा। हमारे मामले में, हम एक सम्मिलित विवरण जारी कर रहे हैं, जो TutorialID = 1 और TutorialName = VB.Net का रिकॉर्ड सम्मिलित करेगा
  3. अगला, हम कमांड ऑब्जेक्ट बनाते हैं जो डेटाबेस के खिलाफ SQL स्टेटमेंट को निष्पादित करने के लिए उपयोग किया जाता है। SQL कमांड में, आपको कनेक्शन ऑब्जेक्ट और SQL स्ट्रिंग को पास करना होगा
  4. हमारे डेटा एडेप्टर कमांड में, अब हम एसक्यूएल कमांड को अपने एडॉप्टर में जोड़ते हैं। हम तब ExecuteNonQuery पद्धति भी जारी करते हैं, जिसका उपयोग हमारे डेटाबेस के विरुद्ध सम्मिलित विवरण निष्पादित करने के लिए किया जाता है। डेटाबेस के विरुद्ध कोई भी DML कथन जारी करने के लिए C # में 'ExecuteNonQuery' विधि का उपयोग किया जाता है। DML कथनों से हमारा तात्पर्य ऑपरेशन डालने, हटाने और अद्यतन करने से है। C # में, यदि आप किसी तालिका के विरुद्ध इन कथनों को जारी करना चाहते हैं, तो आपको ExecuteNonQuery पद्धति का उपयोग करना होगा।
  5. हम अंत में अपने डेटाबेस ऑपरेशन से संबंधित सभी वस्तुओं को बंद कर देते हैं। याद रखें यह हमेशा एक अच्छा अभ्यास है।

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

आउटपुट: -

यदि आप SQL सर्वर एक्सप्रेस में जाते हैं और डिमोट टेबल में पंक्तियों को देखते हैं, तो आपको नीचे दी गई पंक्ति दिखाई देगी

C # अपडेट डेटाबेस

डेटा एक्सेस करने की तरह, C # में डेटाबेस से मौजूदा रिकॉर्ड को भी अपडेट करने की क्षमता है। हमारे डेटाबेस में रिकॉर्ड को अपडेट करने का तरीका दिखाने के लिए, आइए उसी टेबल संरचना को लेते हैं जो ऊपर इस्तेमाल की गई थी।

ट्यूटोरियल

TutorialName

1

सी#

ASP। नेट

VB.Net

कोड को हमारे रूप में बदलते हैं, ताकि हम निम्नलिखित पंक्ति को अपडेट कर सकें। पुरानी पंक्ति का मान TutorialID "3" और ट्यूटोरियल का नाम "VB.Net" है। जिसे हम इसे "VB.Net पूरा" के लिए अपडेट करेंगे, जबकि ट्यूटोरियल आईडी के लिए पंक्ति मूल्य समान रहेगा।

पुरानी पंक्ति

ट्यूटोरियल

TutorialName

VB.Net

नई पंक्ति

ट्यूटोरियल

TutorialName

VB.Net पूर्ण

तो चलिए हमारे प्रोग्राम में निम्नलिखित कोड जोड़ते हैं। हमारे डेटाबेस में मौजूदा रिकॉर्ड को अपडेट करने के लिए नीचे दिए गए कोड स्निपेट का उपयोग किया जाएगा।

कोड स्पष्टीकरण के साथ C # SqlCommand उदाहरण: -

  1. पहला कदम निम्नलिखित चर बनाना है
    1. SQLCommand - इस डेटा प्रकार का उपयोग उन वस्तुओं को परिभाषित करने के लिए किया जाता है जिनका उपयोग किसी डेटाबेस के खिलाफ SQL ऑपरेशन करने के लिए किया जाता है। यह ऑब्जेक्ट SQL कमांड रखेगा जो हमारे SQL सर्वर डेटाबेस के खिलाफ चलेगा।
    2. डेटाडैपर ऑब्जेक्ट का उपयोग विशिष्ट SQL ऑपरेशन जैसे डालने, हटाने और कमांड को अपडेट करने के लिए किया जाता है।
    3. हम फिर एक स्ट्रिंग वेरिएबल को परिभाषित करते हैं, जो कि हमारे एसक्यूएल कमांड स्ट्रिंग को पकड़ने के लिए एसक्यूएल है।
  2. अगला कदम SQL स्टेटमेंट को परिभाषित करना है जो हमारे डेटाबेस के खिलाफ उपयोग किया जाएगा। हमारे मामले में हम एक अपडेट स्टेटमेंट जारी कर रहे हैं, यह ट्यूटोरियल का नाम "VB.Net कम्प्लीट" अपडेट कर देगा जबकि ट्यूटोरियलआईडी अपरिवर्तित है और 3 के रूप में रखा गया है।
  3. अगला, हम कमांड ऑब्जेक्ट बनाएंगे, जिसका उपयोग डेटाबेस के खिलाफ SQL स्टेटमेंट को निष्पादित करने के लिए किया जाता है। SQL कमांड में, आपने कनेक्शन ऑब्जेक्ट और SQL स्ट्रिंग को पास किया है।
  4. हमारे डेटा एडेप्टर कमांड में, अब हम एसक्यूएल कमांड को अपने एडॉप्टर में जोड़ते हैं। हम तब ExecuteNonQuery पद्धति भी जारी करते हैं जिसका उपयोग हमारे डेटाबेस के खिलाफ अपडेट स्टेटमेंट को निष्पादित करने के लिए किया जाता है।
  5. हम अंत में अपने डेटाबेस ऑपरेशन से संबंधित सभी वस्तुओं को बंद कर देते हैं। याद रखें यह हमेशा एक अच्छा अभ्यास है।

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

आउटपुट: -

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

रिकॉर्ड हटाना

डेटा तक पहुँचने की तरह, C # में डेटाबेस से मौजूदा रिकॉर्ड को हटाने की क्षमता है। यह दिखाने के लिए कि हमारे डेटाबेस में रिकॉर्ड कैसे हटाएं, चलो उसी तालिका संरचना को लेते हैं जिसका उपयोग ऊपर किया गया था।

ट्यूटोरियल

TutorialName

1

सी#

ASP। नेट

VB.Net पूर्ण

कोड को हमारे रूप में बदलते हैं, ताकि हम निम्नलिखित पंक्ति को हटा सकें

ट्यूटोरियल

TutorialName

VB.Net पूर्ण

तो चलिए हमारे प्रोग्राम में निम्नलिखित कोड जोड़ते हैं। हमारे डेटाबेस में मौजूदा रिकॉर्ड को हटाने के लिए नीचे दिए गए कोड स्निपेट का उपयोग किया जाएगा।

कोड स्पष्टीकरण: -

  1. इस कोड में मुख्य अंतर यह है कि अब हम डिलीट एसक्यूएल स्टेटमेंट जारी कर रहे हैं। डिलीट स्टेटमेंट का उपयोग डेमोोट टेबल में उस पंक्ति को हटाने के लिए किया जाता है जिसमें TutorialID का मान 3 होता है।
  2. हमारे डेटा एडेप्टर कमांड में, अब हम एसक्यूएल कमांड को अपने एडॉप्टर में जोड़ते हैं। हम तब ExecuteNonQuery पद्धति को भी जारी करते हैं जिसका उपयोग हमारे डेटाबेस के खिलाफ डिलीट स्टेटमेंट को निष्पादित करने के लिए किया जाता है।

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

आउटपुट: -

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

नियंत्रण को डेटा से जोड़ना

पहले के खंडों में, हमने देखा है कि हम डेटाबेस से डेटा लाने के लिए SQLCommand और SQLReader जैसे C # कमांड का उपयोग कैसे कर सकते हैं। हमने यह भी देखा कि हम तालिका की प्रत्येक पंक्ति को कैसे पढ़ते हैं और उपयोगकर्ता को तालिका की सामग्री प्रदर्शित करने के लिए एक संदेश बॉक्स का उपयोग करते हैं।

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

ट्यूटोरियल

TutorialName

1

सी#

ASP। नेट

VB.Net पूर्ण

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

अच्छी खबर यह है कि C # डेटा पर नियंत्रण के बंधन की अनुमति देकर अतिरिक्त कोडिंग प्रयास को कम कर सकता है। इसका मतलब यह है कि C # टेबल के किसी विशेष क्षेत्र के अनुसार टेक्स्टबॉक्स के मूल्य को स्वचालित रूप से पॉप्युलेट कर सकता है।

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

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

आइए एक कोड उदाहरण देखें कि हम कैसे नियंत्रणों के बंधन को प्राप्त कर सकते हैं।

हमारे उदाहरण में, हम विंडोज़ फॉर्म पर 2 टेक्स्टबॉक्स बनाने जा रहे हैं। वे क्रमशः ट्यूटोरियल आईडी और ट्यूटोरियल नाम का प्रतिनिधित्व करने जा रहे हैं। वे तदनुसार डेटाबेस के ट्यूटोरियल आईडी और ट्यूटोरियलनाम क्षेत्रों से बंधे होंगे।

इसे प्राप्त करने के लिए नीचे दिए गए चरणों का पालन करें।

चरण 1) मूल रूप का निर्माण। फॉर्म में 2 घटकों- लेबल और टेक्स्टबॉक्स को खींचें और छोड़ें। फिर निम्नलिखित सबस्टेशनों को पूरा करें

  1. ट्यूटोरियल के रूप में पहले लेबल का टेक्स्ट मान डालें
  2. दूसरे लेबल के टेक्स्ट मान को TutorialName के रूप में रखें
  3. पहले टेक्स्टबॉक्स की नाम संपत्ति को txtID के रूप में रखें
  4. दूसरे टेक्स्टबॉक्स की नाम संपत्ति को txtName के रूप में रखें

नीचे दिए गए चरणों का पालन करने के बाद फॉर्म कैसा दिखेगा।

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

चरण 3) अगला चरण हमारे डेटाबेस में एक बंधन जोड़ना है। यह किसी भी टेक्स्टबॉक्स नियंत्रण पर जाकर डेटाबिंडिंग्स-> टेक्स्ट प्रॉपर्टी पर क्लिक करके किया जा सकता है। बाइंडिंग नेविगेटर का उपयोग आपके एप्लिकेशन से डेटाबेस में लिंक स्थापित करने के लिए किया जाता है।

जब आप यह चरण करते हैं, तो दृश्य स्टूडियो स्वचालित रूप से एप्लिकेशन को डेटाबेस से जुड़ा हुआ है यह सुनिश्चित करने के लिए आवश्यक कोड जोड़ देगा। सामान्यतया Visual Studio में डेटाबेस को प्रोजेक्ट डेटा स्रोत के रूप में संदर्भित किया जाता है। तो यह सुनिश्चित करने के लिए कि एप्लिकेशन और डेटाबेस के बीच कनेक्शन स्थापित है, पहला कदम प्रोजेक्ट डेटा स्रोत बनाना है।

निम्न स्क्रीन दिखाई देगी। लिंक पर क्लिक करें- "प्रोजेक्ट डेटा स्रोत जोड़ें"। जब आप प्रोजेक्ट डेटा स्रोत पर क्लिक करते हैं, तो आपको एक विज़ार्ड के साथ प्रस्तुत किया जाएगा; यह आपको डेटाबेस कनेक्शन को परिभाषित करने की अनुमति देगा।

चरण 4) एक बार जब आप प्रोजेक्ट डेटा स्रोत लिंक पर क्लिक करते हैं, तो आपको एक विज़ार्ड के साथ प्रस्तुत किया जाएगा जिसका उपयोग डेमोटब डेटाबेस से कनेक्शन बनाने के लिए किया जाएगा। निम्नलिखित चरण विस्तार से दिखाते हैं कि विज़ार्ड के प्रत्येक चरण के दौरान कॉन्फ़िगर करने की आवश्यकता क्या है।

  1. जो स्क्रीन पॉप अप होती है, उसमें डेटा स्रोत प्रकार को डेटाबेस के रूप में चुनें और फिर अगले बटन पर क्लिक करें।

  1. अगली स्क्रीन में, आपको डेटाबेस में कनेक्शन स्ट्रिंग का निर्माण शुरू करना होगा। डेटाबेस से कनेक्शन स्थापित करने के लिए एप्लिकेशन के लिए कनेक्शन स्ट्रिंग आवश्यक है। इसमें सर्वर का नाम, डेटाबेस का नाम और ड्राइवर का नाम जैसे पैरामीटर शामिल हैं।
    1. न्यू कनेक्शन बटन पर क्लिक करें
    2. Microsoft SQL सर्वर के रूप में डेटा स्रोत चुनें
    3. कंटिन्यू बटन पर क्लिक करें।

  1. अगला, आपको डेटाबेस से कनेक्ट करने के लिए क्रेडेंशियल्स जोड़ने की आवश्यकता है
    1. वह सर्वर नाम चुनें जिस पर SQL सर्वर रहता है
    2. डेटाबेस से कनेक्ट करने के लिए यूजर आईडी और पासवर्ड डालें
    3. डेटाबेस को डेमोटब के रूप में चुनें
    4. 'ओके' बटन पर क्लिक करें।

  1. इस स्क्रीन में, हम उन सभी सेटिंग्स की पुष्टि करेंगे जो पिछली स्क्रीनों पर की गई थीं।
    1. कनेक्शन स्ट्रिंग में संवेदनशील डेटा शामिल करने के लिए "हां" विकल्प चुनें
    2. अगले बटन पर क्लिक करें।

  1. अगली स्क्रीन में, कनेक्शन स्ट्रिंग के निर्माण की पुष्टि करने के लिए "अगला" बटन पर क्लिक करें

  1. इस चरण में,
  1. Demotb की सारणी चुनें, जो अगली स्क्रीन में दिखाई जाएगी।
  2. यह तालिका अब C # प्रोजेक्ट में उपलब्ध डेटा स्रोत बन जाएगी

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

चरण 5) अब जब डेटा स्रोत परिभाषित किया गया है, तो हमें अब ट्यूटोरियल और ट्यूटोरियलनाम टेक्स्टबॉक्स को डीमोट टेबल पर कनेक्ट करना होगा। जब आप या तो TutorialID या TutorialName टेक्स्टबॉक्स की टेक्स्ट प्रॉपर्टी पर क्लिक करते हैं, तो अब आप देखेंगे कि Demotb का बाइंडिंग सोर्स उपलब्ध है।

पहले टेक्स्ट बॉक्स के लिए ट्यूटोरियल आईडी चुनें। दूसरे टेक्स्टबॉक्स के लिए इस चरण को दोहराएं और TutorialName के रूप में फ़ील्ड चुनें। नीचे दिए गए चरणों से पता चलता है कि हम प्रत्येक नियंत्रण पर कैसे नेविगेट कर सकते हैं और तदनुसार बाध्यकारी को बदल सकते हैं।

  1. ट्यूटोरियल आईडी नियंत्रण पर क्लिक करें।

  1. प्रॉपर्टीज़ विंडो में, आपको ट्यूटोरियलआईडी टेक्स्टबॉक्स के गुण दिखाई देंगे। टेक्स्ट प्रॉपर्टी पर जाएं और डाउन एरो बटन पर क्लिक करें।

  1. जब आप डाउन एरो बटन पर क्लिक करते हैं, तो आपको डीमोटबाइंडिंग सोर्स विकल्प दिखाई देगा। और इसके नीचे आपको TutorialName और TutorialID के विकल्प दिखाई देंगे। ट्यूटोरियल आईडी एक चुनें।

ट्यूटोरियल नाम पाठ बॉक्स के लिए उपरोक्त 3 चरणों को दोहराएं।

  1. इसलिए Tutorial Name टेक्स्ट बॉक्स पर क्लिक करें
  2. प्रॉपर्टीज विंडो पर जाएं
  3. पाठ गुण चुनें
  4. DemotbBindingSource के अंतर्गत TutorialName विकल्प चुनें

चरण 6) अगला हमें अपने डेमोटब डेटा स्रोत को इंगित करने के लिए बाइंडिंग नैविगेटर की बाइंडिंग सोर्स प्रॉपर्टी को बदलना होगा। इसका कारण यह है कि बाइंडिंग नेविगेटर को यह भी जानना होगा कि उसे किस तालिका को संदर्भित करना है।

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

अगला, हमें गुण विंडो पर जाने की आवश्यकता है ताकि हम बाइंडिंग स्रोत संपत्ति में परिवर्तन कर सकें।

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

आउटपुट: -

अब जब प्रोजेक्ट लॉन्च किया जाता है, तो आप देख सकते हैं कि टेक्स्टबॉक्स टेबल से स्वचालित रूप से मान प्राप्त करता है।

जब आप नेविगेटर पर अगला बटन क्लिक करते हैं, तो यह स्वचालित रूप से तालिका में अगले रिकॉर्ड पर जाता है। और अगले रिकॉर्ड के मान स्वचालित रूप से टेक्स्ट बॉक्स में आते हैं

C # DataGridView

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

C # और Visual Studio में डेटा ग्रिड इनबिल्ट है, इसका उपयोग डेटा प्रदर्शित करने के लिए किया जा सकता है। आइए इसका एक उदाहरण देखें। हमारे उदाहरण में, हमारे पास एक डेटा ग्रिड होगा, जिसका उपयोग डेमो आईडी से ट्यूटोरियल आईडी और ट्यूटोरियल नाम मूल्यों को प्रदर्शित करने के लिए किया जाएगा।

चरण 1) DataGridView नियंत्रण को टूलबॉक्स से फॉर्म को Visual Studio में खींचें। DataGridView नियंत्रण का उपयोग Visual Studio में ग्रिड जैसी प्रारूप में तालिका की पंक्तियों को प्रदर्शित करने के लिए किया जाता है।

चरण 2) अगले चरण में, हमें अपने डेटा ग्रिड को डेटाबेस से कनेक्ट करना होगा। अंतिम खंड में, हमने एक प्रोजेक्ट डेटा स्रोत बनाया था। आइए हमारे उदाहरण में समान डेटा स्रोत का उपयोग करें।

  1. सबसे पहले, आपको ग्रिड चुनने और ग्रिड में तीर पर क्लिक करने की आवश्यकता है। यह ग्रिड कॉन्फ़िगरेशन विकल्पों को लाएगा।
  2. कॉन्फ़िगरेशन विकल्पों में, डेटा स्रोत को demotbBindingSource के रूप में चुनें, जो पहले खंड में बनाया गया डेटा स्रोत था।

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

आउटपुट: -

आउटपुट से, आप देख सकते हैं कि ग्रिड डेटाबेस से मानों से पॉपुलेटेड था।

सारांश

  • C # SQL Oracle और Microsoft SQL Server जैसे डेटाबेस के साथ काम कर सकता है।
  • इस C # डेटाबेस ट्यूटोरियल में सभी कमांड्स हैं जो डेटाबेस के साथ काम करने के लिए आवश्यक हैं। इसमें डेटाबेस से कनेक्शन स्थापित करना शामिल है। आप C # में कमांड्स का उपयोग करके ऑपरेशन जैसे सिलेक्ट, अपडेट, इंसर्ट और डिलीट कर सकते हैं।
  • डेटाबेस द्वारा लौटाए गए सभी डेटा को रखने के लिए C # में DataReader ऑब्जेक्ट का उपयोग किया जाता है। C # में लूप जबकि डेटा पंक्तियों को एक बार में पढ़ने के लिए उपयोग किया जा सकता है।
  • डेटा एडॉप्टर ऑब्जेक्ट का उपयोग SQL ऑपरेशंस जैसे कि डालने, हटाने और डेटाबेस के खिलाफ अपडेट करने के लिए किया जाता है।
  • C # एक तालिका में विभिन्न क्षेत्रों पर नियंत्रण को बाँध सकता है। वे C # में एक डेटा स्रोत को परिभाषित करके बाध्य हैं। डेटा स्रोत का उपयोग डेटाबेस से डेटा को खींचने और नियंत्रण में उन्हें पॉप्युलेट करने के लिए किया जाता है।
  • बाइंडिंग नेविगेटर का उपयोग किसी तालिका में पंक्तियों के माध्यम से स्वचालित रूप से नेविगेट करने के लिए किया जाता है।
  • C # में डेटा ग्रिड डेटाबेस से कनेक्ट हो सकता है और ग्रिड जैसे प्रारूप में तालिका से सभी मान प्रदर्शित कर सकता है।