Dostęp do danych z bazy danych jest jednym z ważnych aspektów każdego języka programowania. Każdy język programowania musi mieć możliwość pracy z bazami danych. C # nie jest inny.
Może współpracować z różnymi typami baz danych. Może współpracować z najpopularniejszymi bazami danych, takimi jak Oracle i Microsoft SQL Server.
Może również współpracować z nowymi formami baz danych, takimi jak MongoDB i MySQL.
W tym samouczku dotyczącym połączeń w języku C # sql nauczysz się:
- Podstawy łączności z bazą danych
- Jak połączyć C # z bazą danych
- Uzyskaj dostęp do danych za pomocą SqlDataReader
- C # wstaw do bazy danych
- Aktualizowanie rekordów
- Usuwanie rekordów
- Łączenie kontroli z danymi
- C # DataGridView
Podstawy łączności z bazą danych
C # i .Net mogą współpracować z większością baz danych, z których najpopularniejsze to Oracle i Microsoft SQL Server. Jednak w przypadku każdej bazy danych logika pracy z nimi wszystkimi jest w większości taka sama.
W naszych przykładach przyjrzymy się działaniu Microsoft SQL Server jako naszej bazy danych. W celach edukacyjnych można pobrać i używać Microsoft SQL Server Express Edition , który jest darmowym oprogramowaniem bazodanowym dostarczanym przez Microsoft.
Podczas pracy z bazami danych są następujące pojęcia, które są wspólne dla wszystkich baz danych.
- Połączenie - aby pracować z danymi w bazie danych, pierwszym oczywistym krokiem jest połączenie. Połączenie z bazą danych zwykle składa się z poniższych parametrów.
- Nazwa bazy danych lub źródło danych - Pierwszym ważnym parametrem jest nazwa bazy danych, z którą ma zostać nawiązane połączenie. Każde połączenie może działać jednocześnie tylko z jedną bazą danych.
- Poświadczenia - Kolejnym ważnym aspektem jest nazwa użytkownika i hasło, których należy użyć do nawiązania połączenia z bazą danych. Zapewnia, że nazwa użytkownika i hasło mają niezbędne uprawnienia do łączenia się z bazą danych.
- Parametry opcjonalne - dla każdego typu bazy danych można określić parametry opcjonalne, aby uzyskać więcej informacji o tym, jak .net powinien obsługiwać połączenie z bazą danych. Na przykład można określić parametr, jak długo połączenie powinno pozostać aktywne. Jeśli przez określony czas nie zostanie wykonana żadna operacja, parametr określi, czy połączenie musi zostać zamknięte.
- Wybieranie danych z bazy danych - Po nawiązaniu połączenia kolejnym ważnym aspektem jest pobranie danych z bazy danych. C # może wykonać polecenie wyboru „SQL” względem bazy danych. Instrukcja „SQL” może służyć do pobierania danych z określonej tabeli w bazie danych.
- Wstawianie danych do bazy danych - C # może również służyć do wstawiania rekordów do bazy danych. Wartości można określić w języku C # dla każdego wiersza, który należy wstawić do bazy danych.
- Aktualizowanie danych do bazy danych - C # może również służyć do aktualizowania istniejących rekordów w bazie danych. Nowe wartości można określić w języku C # dla każdego wiersza, który ma zostać zaktualizowany w bazie danych.
- Usuwanie danych z bazy danych - C # może również służyć do usuwania rekordów z bazy danych. Wybierz polecenia, aby określić, które wiersze mają zostać usunięte, można określić w języku C #.
Ok, teraz, gdy poznaliśmy teorię każdej operacji, przejdźmy do dalszych sekcji, aby zobaczyć, jak możemy wykonywać operacje na bazie danych w C #.
Polecenie SQL w języku C #
SqlCommand w C # umożliwia użytkownikowi wykonywanie zapytań i wysyłanie poleceń do bazy danych. Polecenie SQL jest określone przez obiekt połączenia SQL. Używane są dwie metody, metoda ExecuteReader dla wyników zapytania i ExecuteNonQuery dla poleceń wstawiania, aktualizowania i usuwania. Jest to metoda najlepsza dla różnych poleceń.
Jak połączyć C # z bazą danych
Przyjrzyjmy się teraz kodowi, który należy zachować na miejscu, aby utworzyć połączenie z bazą danych. W naszym przykładzie połączymy się z bazą danych o nazwie Demodb. Poświadczenia używane do łączenia się z bazą danych podano poniżej
- Nazwa użytkownika - sa
- Hasło - demo123
Zobaczymy prostą aplikację formularzy Windows do pracy z bazami danych. Będziemy mieć prosty przycisk o nazwie „Połącz”, który posłuży do połączenia się z bazą danych.
Postępujmy więc zgodnie z poniższymi krokami, aby to osiągnąć
Krok 1) Pierwszy krok polega na utworzeniu nowego projektu w programie Visual Studio. Po uruchomieniu programu Visual Studio należy wybrać opcję menu Nowy-> Projekt.
Krok 2) Następnym krokiem jest wybranie typu projektu jako aplikacji Windows Forms. W tym miejscu musimy również podać nazwę i lokalizację naszego projektu.
- W oknie dialogowym projektu widzimy różne opcje tworzenia różnych typów projektów w programie Visual Studio. Kliknij opcję Windows po lewej stronie.
- Po kliknięciu opcji systemu Windows w poprzednim kroku będziemy mogli zobaczyć opcję aplikacji Windows Forms. Kliknij tę opcję.
- Następnie podajemy nazwę aplikacji, która w naszym przypadku to „DemoApplication”. Musimy również podać lokalizację do przechowywania naszej aplikacji.
- Na koniec klikamy przycisk „OK”, aby umożliwić programowi Visual Studio utworzenie naszego projektu.
Krok 3) Teraz dodaj przycisk z przybornika do formularza Windows. Umieść właściwość text przycisku jako Połącz. Tak to będzie wyglądać
Krok 4) Teraz kliknij dwukrotnie formularz, aby program obsługi zdarzenia został dodany do kodu zdarzenia kliknięcia przycisku. W programie obsługi zdarzeń dodaj poniższy kod.
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();}}}
Objaśnienie kodu: -
- Pierwszym krokiem jest utworzenie zmiennych, które posłużą do utworzenia ciągu połączenia i połączenia z bazą danych SQL Server.
- Następnym krokiem jest utworzenie parametrów połączenia. Ciąg łączący musi być określony poprawnie, aby C # mógł zrozumieć parametry połączenia. Ciąg połączenia składa się z następujących części
- Źródło danych - jest to nazwa serwera, na którym znajduje się baza danych. W naszym przypadku znajduje się on na maszynie o nazwie WIN-50GP30FGO75.
- Katalog początkowy służy do określenia nazwy bazy danych
- Identyfikator użytkownika i hasło to poświadczenia wymagane do połączenia z bazą danych.
- Następnie przypisujemy ciąg łączący do zmiennej cnn. Zmienna cnn typu SqlConnection służy do nawiązywania połączenia z bazą danych.
- Następnie używamy metody Open zmiennej cnn, aby otworzyć połączenie z bazą danych. Następnie po prostu wyświetlamy użytkownikowi komunikat, że połączenie zostało nawiązane.
- Po pomyślnym zakończeniu operacji zamykamy połączenie z bazą danych. Zawsze dobrze jest zamknąć połączenie z bazą danych, jeśli nic więcej nie jest wymagane w bazie danych.
Gdy powyższy kod jest ustawiony, a projekt jest wykonywany przy użyciu programu Visual Studio, otrzymasz poniższe dane wyjściowe. Po wyświetleniu formularza kliknij przycisk Połącz.
Wynik:-
Po kliknięciu przycisku „Połącz” na wyjściu widać, że połączenie z bazą danych zostało nawiązane. W związku z tym zostało wyświetlone okno komunikatu.
Uzyskaj dostęp do danych za pomocą SqlDataReader
Aby pokazać, jak można uzyskać dostęp do danych za pomocą języka C #, załóżmy, że w naszej bazie danych znajdują się następujące artefakty.
- Tabela o nazwie demotb. Ta tabela będzie używana do przechowywania identyfikatorów i nazw różnych samouczków.
- Tabela będzie miała 2 kolumny, jedną o nazwie „TutorialID”, a drugą o nazwie „TutorialName”.
- W tej chwili tabela będzie miała 2 wiersze, jak pokazano poniżej.
TutorialID |
TutorialName |
1 |
DO# |
2 |
ASP.Net |
Zmieńmy kod w naszym formularzu, abyśmy mogli zapytać o te dane i wyświetlić informacje za pośrednictwem Messagebox. Zwróć uwagę, że cały kod wprowadzony poniżej jest kontynuacją kodu zapisanego dla połączenia danych w poprzedniej sekcji.
Krok 1) Podzielmy kod na 2 części, aby był łatwy do zrozumienia dla użytkownika.
- Pierwszym będzie skonstruowanie naszej instrukcji „select”, która posłuży do odczytania danych z bazy danych.
- Następnie wykonamy polecenie „select” względem bazy danych i odpowiednio pobierzemy wszystkie wiersze tabeli.
Objaśnienie kodu: -
- Pierwszym krokiem jest utworzenie następujących zmiennych
- SQLCommand - „SQLCommand” to klasa zdefiniowana w C #. Ta klasa służy do wykonywania operacji odczytu i zapisu w bazie danych. Stąd pierwszym krokiem jest upewnienie się, że tworzymy zmienny typ tej klasy. Zmienna ta będzie następnie wykorzystywana w kolejnych krokach odczytu danych z naszej bazy danych.
- Obiekt DataReader służy do pobierania wszystkich danych określonych przez zapytanie SQL. Następnie możemy odczytać wszystkie wiersze tabeli jeden po drugim za pomocą czytnika danych.
- Następnie definiujemy 2 zmienne łańcuchowe, z których jedna to „SQL” do przechowywania naszego ciągu poleceń SQL. Następnym jest „Wyjście”, które będzie zawierało wszystkie wartości tabeli.
- Następnym krokiem jest zdefiniowanie instrukcji SQL, która będzie używana w naszej bazie danych. W naszym przypadku jest to „Wybierz TutorialID, TutorialName z demotb”. Spowoduje to pobranie wszystkich wierszy z tabeli demotb.
- Następnie tworzymy obiekt polecenia, który jest używany do wykonania instrukcji SQL w bazie danych. W poleceniu SQL musisz przekazać obiekt połączenia i ciąg znaków SQL.
- Następnie wykonamy polecenie czytnika danych, które pobierze wszystkie wiersze z tabeli demotb.
- Teraz, gdy mamy już ze sobą wszystkie wiersze tabeli, potrzebujemy mechanizmu umożliwiającego dostęp do każdego wiersza jeden po drugim. W tym celu użyjemy instrukcji while. Instrukcja while będzie używana do uzyskiwania dostępu do wierszy z czytnika danych pojedynczo. Następnie używamy metody GetValue, aby uzyskać wartość TutorialID i TutorialName.
Krok 2) W ostatnim kroku po prostu wyświetlimy dane wyjściowe użytkownikowi i zamkniemy wszystkie obiekty związane z działaniem bazy danych.
Objaśnienie kodu: -
- Będziemy kontynuować nasz kod, wyświetlając wartość zmiennej Output za pomocą MessageBox. Zmienna Output będzie zawierać wszystkie wartości z tabeli demotb.
- W końcu zamykamy wszystkie obiekty związane z działaniem naszej bazy danych. Pamiętaj, że to zawsze dobra praktyka.
Gdy powyższy kod jest ustawiony, a projekt jest uruchamiany przy użyciu programu Visual Studio, otrzymasz poniższe dane wyjściowe. Po wyświetleniu formularza kliknij przycisk Połącz.
Wynik:-
Na podstawie wyników widać wyraźnie, że program był w stanie pobrać wartości z bazy danych. Dane są następnie wyświetlane w oknie komunikatu.
C # wstaw do bazy danych
Podobnie jak w przypadku uzyskiwania dostępu do danych, C # ma również możliwość wstawiania rekordów do bazy danych. Aby pokazać, jak wstawiać rekordy do naszej bazy danych, weźmy tę samą strukturę tabeli, która została użyta powyżej.
TutorialID |
TutorialName |
1 |
DO# |
2 |
ASP.Net |
Zmieńmy kod w naszym formularzu, abyśmy mogli wstawić następujący wiersz do tabeli
TutorialID |
TutorialName |
3 |
VB.Net |
Dodajmy więc następujący kod do naszego programu. Poniższy fragment kodu zostanie użyty do wstawienia istniejącego rekordu w naszej bazie danych.
Objaśnienie kodu: -
- Pierwszym krokiem jest utworzenie następujących zmiennych
- SQLCommand - ten typ danych służy do definiowania obiektów, które są używane do wykonywania operacji SQL na bazie danych. Ten obiekt będzie zawierał polecenie SQL, które będzie działać na naszej bazie danych SQL Server.
- Obiekt DataAdapter służy do wykonywania określonych operacji SQL, takich jak polecenia wstawiania, usuwania i aktualizowania.
- Następnie definiujemy zmienną łańcuchową, którą jest „SQL”, która przechowuje nasz ciąg poleceń SQL.
- Następnym krokiem jest faktyczne zdefiniowanie instrukcji SQL, która będzie używana w naszej bazie danych. W naszym przypadku wydajemy instrukcję insert, która wstawi rekord TutorialID = 1 i TutorialName = VB.Net
- Następnie tworzymy obiekt polecenia, który jest używany do wykonania instrukcji SQL w bazie danych. W poleceniu SQL musisz przekazać obiekt połączenia i ciąg znaków SQL
- W naszym poleceniu adaptera danych skojarzymy teraz polecenie wstawienia SQL z naszym adapterem. Następnie wydajemy również metodę ExecuteNonQuery, która jest używana do wykonywania instrukcji Insert w naszej bazie danych. Metoda „ExecuteNonQuery” jest używana w języku C # do wydawania wszelkich instrukcji DML względem bazy danych. Przez instrukcje DML rozumiemy operację wstawiania, usuwania i aktualizowania. W języku C #, jeśli chcesz wydać dowolne z tych instrukcji względem tabeli, musisz użyć metody ExecuteNonQuery.
- W końcu zamykamy wszystkie obiekty związane z działaniem naszej bazy danych. Pamiętaj, że to zawsze dobra praktyka.
Gdy powyższy kod jest ustawiony, a projekt jest wykonywany przy użyciu programu Visual Studio, otrzymasz poniższe dane wyjściowe. Po wyświetleniu formularza kliknij przycisk Połącz.
Wynik:-
Jeśli przejdziesz do SQL Server Express i zobaczysz wiersze w tabeli demotb, zobaczysz wstawiony wiersz, jak pokazano poniżej
Baza danych aktualizacji języka C #
Podobnie jak w przypadku uzyskiwania dostępu do danych, C # ma również możliwość aktualizowania istniejących rekordów z bazy danych. Aby pokazać, jak aktualizować rekordy w naszej bazie danych, weźmy tę samą strukturę tabeli, która została użyta powyżej.
TutorialID |
TutorialName |
1 |
DO# |
2 |
ASP.Net |
3 |
VB.Net |
Zmieńmy kod w naszym formularzu, abyśmy mogli zaktualizować następujący wiersz. Stara wartość wiersza to TutorialID „3”, a Tutorial Name to „VB.Net”. Które zaktualizujemy do „VB.Net complete”, podczas gdy wartość wiersza dla Tutorial ID pozostanie taka sama.
Stary rząd
TutorialID |
TutorialName |
3 |
VB.Net |
Nowy wiersz
TutorialID |
TutorialName |
3 |
VB.Net kompletny |
Dodajmy więc następujący kod do naszego programu. Poniższy fragment kodu zostanie użyty do zaktualizowania istniejącego rekordu w naszej bazie danych.
Przykład języka C # SqlCommand z objaśnieniem kodu: -
- Pierwszym krokiem jest utworzenie następujących zmiennych
- SQLCommand - ten typ danych służy do definiowania obiektów, które są używane do wykonywania operacji SQL na bazie danych. Ten obiekt będzie zawierał polecenie SQL, które będzie działać na naszej bazie danych SQL Server.
- Obiekt dataadapter jest używany do wykonywania określonych operacji SQL, takich jak polecenia wstawiania, usuwania i aktualizowania.
- Następnie definiujemy zmienną łańcuchową, którą jest SQL do przechowywania naszego ciągu poleceń SQL.
- Następnym krokiem jest zdefiniowanie instrukcji SQL, która będzie używana w naszej bazie danych. W naszym przypadku wydajemy instrukcję aktualizacji, która spowoduje zaktualizowanie nazwy samouczka do „VB.Net Complete”, podczas gdy identyfikator TutorialID pozostanie niezmieniony i będzie miał wartość 3.
- Następnie utworzymy obiekt polecenia, który zostanie użyty do wykonania instrukcji SQL w bazie danych. W poleceniu SQL przekazałeś obiekt połączenia i łańcuch SQL.
- W naszym poleceniu adaptera danych skojarzymy teraz polecenie wstawienia SQL z naszym adapterem. Następnie wydajemy również metodę ExecuteNonQuery, która jest używana do wykonania instrukcji Update w naszej bazie danych.
- W końcu zamykamy wszystkie obiekty związane z działaniem naszej bazy danych. Pamiętaj, że to zawsze dobra praktyka.
Gdy powyższy kod jest ustawiony, a projekt jest wykonywany przy użyciu programu Visual Studio, otrzymasz poniższe dane wyjściowe. Po wyświetleniu formularza kliknij przycisk Połącz.
Wynik:-
Jeśli faktycznie przejdziesz do SQL Server Express i zobaczysz wiersze w tabeli demotb, zobaczysz, że wiersz został pomyślnie zaktualizowany, jak pokazano poniżej.
Usuwanie rekordów
Podobnie jak w przypadku uzyskiwania dostępu do danych, C # ma również możliwość usuwania istniejących rekordów z bazy danych. Aby pokazać, jak usunąć rekordy z naszej bazy danych, weźmy tę samą strukturę tabeli, która została użyta powyżej.
TutorialID |
TutorialName |
1 |
DO# |
2 |
ASP.Net |
3 |
VB.Net kompletny |
Zmieńmy kod w naszym formularzu, abyśmy mogli usunąć następujący wiersz
TutorialID |
TutorialName |
3 |
VB.Net kompletny |
Dodajmy więc następujący kod do naszego programu. Poniższy fragment kodu zostanie użyty do usunięcia istniejącego rekordu w naszej bazie danych.
Objaśnienie kodu: -
- Kluczowa różnica w tym kodzie polega na tym, że teraz wydajemy instrukcję delete SQL. Instrukcja delete służy do usuwania wiersza w tabeli demotb, w którym TutorialID ma wartość 3.
- W naszym poleceniu adaptera danych skojarzymy teraz polecenie wstawienia SQL z naszym adapterem. Następnie wydajemy również metodę ExecuteNonQuery, która jest używana do wykonywania instrukcji Delete w naszej bazie danych.
Gdy powyższy kod jest ustawiony, a projekt jest wykonywany przy użyciu programu Visual Studio, otrzymasz poniższe dane wyjściowe. Po wyświetleniu formularza kliknij przycisk Połącz.
Wynik:-
Jeśli faktycznie przejdziesz do SQL Server Express i zobaczysz wiersze w tabeli demotb, zobaczysz, że wiersz został pomyślnie usunięty, jak pokazano poniżej.
Łączenie kontroli z danymi
We wcześniejszych sekcjach widzieliśmy, jak możemy używać poleceń C #, takich jak SQLCommand i SQLReader, do pobierania danych z bazy danych. Widzieliśmy również, jak czytamy każdy wiersz tabeli i używamy pola wiadomości do wyświetlania zawartości tabeli użytkownikowi.
Ale oczywiście użytkownicy nie chcą widzieć danych wysyłanych za pośrednictwem okien komunikatów i chcieliby lepszych kontroli wyświetlania danych. Przyjrzyjmy się poniższej strukturze danych w tabeli
TutorialID |
TutorialName |
1 |
DO# |
2 |
ASP.Net |
3 |
VB.Net kompletny |
Korzystając z powyższej struktury danych, idealnie byłoby, gdyby użytkownik chciał zobaczyć TutorialID i Tutorial Name wyświetlane w polu tekstowym. Po drugie, mogą chcieć mieć jakiś rodzaj przycisku, który pozwoliłby im przejść do następnego rekordu lub do poprzedniego rekordu w tabeli. Wymagałoby to trochę dodatkowego kodowania od strony programisty.
Dobra wiadomość jest taka, że C # może zmniejszyć dodatkowy wysiłek związany z kodowaniem, umożliwiając powiązanie formantów z danymi. Oznacza to, że C # może automatycznie wypełnić wartość pola tekstowego zgodnie z określonym polem tabeli.
Możesz więc mieć 2 pola tekstowe w formularzu systemu Windows. Następnie możesz połączyć jedno pole tekstowe z polem TutorialID, a drugie z polem TutorialName. To łączenie jest wykonywane w samym projektancie programu Visual Studio i nie trzeba w tym celu pisać dodatkowego kodu.
Program Visual Studio zapewni, że zapisze kod, aby upewnić się, że połączenie działa. Następnie po uruchomieniu aplikacji kontrolki pola tekstowego automatycznie połączą się z bazą danych, pobiorą dane i wyświetlą je w kontrolkach pola tekstowego. Aby to osiągnąć, od programisty nie jest wymagane żadne kodowanie.
Spójrzmy na przykład kodu, w jaki sposób możemy osiągnąć powiązanie kontrolek.
W naszym przykładzie utworzymy 2 pola tekstowe w formularzu Windows. Będą reprezentować odpowiednio ID samouczka i Nazwę samouczka. Będą one odpowiednio powiązane z polami Tutorial ID i TutorialName w bazie danych.
Postępujmy zgodnie z poniższymi krokami, aby to osiągnąć.
Krok 1) Skonstruuj podstawową formę. W formularzu przeciągnij i upuść 2 komponenty - etykiety i pola tekstowe. Następnie wykonaj następujące kroki
- Umieść wartość tekstową pierwszej etykiety jako TutorialID
- Umieść wartość tekstową drugiej etykiety jako TutorialName
- Umieść właściwość name pierwszego pola tekstowego jako txtID
- Umieść właściwość name drugiego pola tekstowego jako txtName
Poniżej przedstawiamy, jak wyglądałby formularz po wykonaniu powyższych czynności.
Krok 2) Następnym krokiem jest dodanie do formularza Nawigatora powiązań. Kontrolka Powiązania Nawigatora może automatycznie nawigować po każdym wierszu tabeli. Aby dodać nawigator powiązań, po prostu przejdź do przybornika i przeciągnij go do formularza.
Krok 3) Następnym krokiem jest dodanie powiązania do naszej bazy danych. Można to zrobić, przechodząc do dowolnej kontrolki Textbox i klikając właściwość DataBindings-> Text. Binding Navigator służy do ustanowienia łącza z aplikacji do bazy danych.
Po wykonaniu tego kroku program Visual Studio automatycznie doda wymagany kod do aplikacji, aby upewnić się, że aplikacja jest połączona z bazą danych. Zwykle baza danych w programie Visual Studio jest nazywana źródłem danych projektu. Aby więc zapewnić połączenie między aplikacją a bazą danych, pierwszym krokiem jest utworzenie źródła danych projektu.
Pojawi się następujący ekran. Kliknij link - „Dodaj źródło danych projektu”. Po kliknięciu źródła danych projektu zostanie wyświetlony kreator; pozwoli to na zdefiniowanie połączenia z bazą danych.
Krok 4) Po kliknięciu łącza Dodaj źródło danych projektu zostanie wyświetlony kreator, który zostanie użyty do utworzenia połączenia z bazą danych demotb. Poniższe kroki szczegółowo pokazują, co należy skonfigurować na każdym kroku kreatora.
- Na ekranie, który się pojawi, wybierz typ źródła danych jako Baza danych, a następnie kliknij przycisk Dalej.
- Na następnym ekranie musisz rozpocząć tworzenie parametrów połączenia z bazą danych. Ciąg połączenia jest wymagany, aby aplikacja mogła nawiązać połączenie z bazą danych. Zawiera parametry, takie jak nazwa serwera, nazwa bazy danych i nazwa sterownika.
- Kliknij przycisk Nowe połączenie
- Wybierz źródło danych jako Microsoft SQL Server
- Kliknij przycisk Kontynuuj.
- Następnie musisz dodać poświadczenia, aby połączyć się z bazą danych
- Wybierz nazwę serwera, na którym znajduje się SQL Server
- Wprowadź identyfikator użytkownika i hasło, aby połączyć się z bazą danych
- Wybierz bazę danych jako demotb
- Kliknij przycisk „ok”.
- Na tym ekranie potwierdzimy wszystkie ustawienia, które były przenoszone na poprzednich ekranach.
- Wybierz opcję „Tak”, aby uwzględnić poufne dane w parametrach połączenia
- Kliknij przycisk „Dalej”.
- Na następnym ekranie kliknij przycisk „Dalej”, aby potwierdzić utworzenie ciągu połączenia
- Na tym etapie
- Wybierz tabele Demotb, które zostaną pokazane na następnym ekranie.
- Ta tabela stanie się teraz dostępnym źródłem danych w projekcie C #
Po kliknięciu przycisku Zakończ program Visual Studio zapewni teraz, że aplikacja może wykonywać zapytania dotyczące wszystkich wierszy w tabeli Demotb.
Krok 5) Po zdefiniowaniu źródła danych musimy teraz połączyć pola tekstowe TutorialID i TutorialName z tabelą demotb. Po kliknięciu właściwości Text pola tekstowego TutorialID lub TutorialName zobaczysz teraz, że źródło powiązania z Demotb jest dostępne.
W pierwszym polu tekstowym wybierz identyfikator samouczka. Powtórz ten krok dla drugiego pola tekstowego i wybierz pole jako TutorialName. Poniższe kroki pokazują, jak możemy przejść do każdej kontrolki i odpowiednio zmienić powiązanie.
- Kliknij kontrolkę Tutorial ID.
- W oknie Właściwości zobaczysz właściwości pola tekstowego TutorialID. Przejdź do właściwości tekstu i kliknij przycisk strzałki w dół.
- Po kliknięciu przycisku strzałki w dół zobaczysz opcję demotbBinding Source. A pod tym zobaczysz opcje TutorialName i TutorialID. Wybierz identyfikator samouczka.
Powtórz powyższe 3 kroki dla pola tekstowego Nazwa samouczka.
- Kliknij pole tekstowe Nazwa samouczka
- Przejdź do okna właściwości
- Wybierz właściwość Text
- Wybierz opcję TutorialName w obszarze demotbBindingSource
Krok 6) Następnie musimy zmienić właściwość Binding Source BindingNavigator, aby wskazywała na nasze źródło danych Demotb. Powodem tego jest to, że Binding Navigator musi również wiedzieć, do której tabeli ma się odnosić.
Binding Navigator służy do wybierania następnego lub poprzedniego rekordu w tabeli. Dlatego nawet jeśli źródło danych jest dodawane do projektu jako całości i do kontrolki pola tekstowego, nadal musimy upewnić się, że Binding Navigator ma również łącze do naszego źródła danych. Aby to zrobić, musimy kliknąć obiekt Binding navigator, przejść do właściwości Binding Source i wybrać to, które jest dostępne
Następnie musimy przejść do okna Właściwości, abyśmy mogli dokonać zmiany właściwości Źródło powiązania.
Po pomyślnym wykonaniu wszystkich powyższych kroków otrzymasz wymienione poniżej dane wyjściowe.
Wynik:-
Teraz po uruchomieniu projektu możesz zobaczyć, że pola tekstowe automatycznie pobierają wartości z tabeli.
Kliknięcie przycisku Dalej w Nawigatorze powoduje automatyczne przejście do następnego rekordu w tabeli. Wartości następnego rekordu pojawiają się automatycznie w polach tekstowych
C # DataGridView
Siatki danych służą do wyświetlania danych z tabeli w formacie podobnym do siatki. Gdy użytkownik widzi dane tabeli, zwykle woli zobaczyć wszystkie wiersze tabeli w jednym ujęciu. Można to osiągnąć, jeśli możemy wyświetlić dane w siatce na formularzu.
C # i Visual Studio mają wbudowane siatki danych, które mogą służyć do wyświetlania danych. Spójrzmy na przykład. W naszym przykładzie będziemy mieć siatkę danych, która zostanie użyta do wyświetlenia wartości Tutorial ID i Tutorial Name z tabeli demotb.
Krok 1) Przeciągnij formant DataGridView z przybornika do formularza w programie Visual Studio. Kontrolka DataGridView jest używana w programie Visual Studio do wyświetlania wierszy tabeli w formacie podobnym do siatki.
Krok 2) W kolejnym kroku musimy podłączyć naszą siatkę danych do bazy danych. W ostatniej sekcji stworzyliśmy źródło danych projektu. W naszym przykładzie użyjmy tego samego źródła danych.
- Najpierw musisz wybrać siatkę i kliknąć strzałkę w siatce. Spowoduje to wyświetlenie opcji konfiguracji sieci.
- W opcjach konfiguracji po prostu wybierz źródło danych jako demotbBindingSource, które było źródłem danych utworzonym we wcześniejszej sekcji.
Jeśli wszystkie powyższe kroki zostaną wykonane tak, jak pokazano, otrzymasz poniższe dane wyjściowe.
Wynik:-
Na podstawie danych wyjściowych widać, że siatka została wypełniona wartościami z bazy danych.
Podsumowanie
- C # SQL może współpracować z bazami danych, takimi jak Oracle i Microsoft SQL Server.
- Ten samouczek dotyczący bazy danych w języku C # zawiera wszystkie polecenia wymagane do pracy z bazami danych. Wymaga to nawiązania połączenia z bazą danych. Możesz wykonywać operacje, takie jak wybieranie, aktualizowanie, wstawianie i usuwanie za pomocą poleceń w C #.
- Obiekt DataReader w języku C # służy do przechowywania wszystkich danych zwróconych przez bazę danych. Pętla While w C # może służyć do odczytywania wierszy danych pojedynczo.
- Obiekt adaptera danych służy do wykonywania operacji SQL, takich jak wstawianie, usuwanie i aktualizowanie bazy danych.
- C # może powiązać formanty z różnymi polami w tabeli. Są one powiązane przez zdefiniowanie źródła danych w C #. Źródło danych służy do pobierania danych z bazy danych i wypełniania ich w kontrolkach.
- Nawigator powiązań służy do automatycznego poruszania się po wierszach tabeli.
- Siatka danych w C # może łączyć się z bazą danych i wyświetlać wszystkie wartości z tabeli w formacie podobnym do siatki.