C#-databaseforbindelse: Sådan forbinder du SQL Server (eksempel)
Det kan arbejde med forskellige typer databaser. Det kan fungere med de mest almindelige databaser som f.eks Oracle og Microsoft SQL Server.
Det kan også arbejde med nye former for databaser som f.eks MongoDB og MySQL.
Grundlæggende om databaseforbindelse
C# og .Net kan arbejde med et flertal af databaser, den mest almindelige er Oracle og Microsoft SQL Server. Men med hver database er logikken bag arbejdet med dem alle stort set den samme.
I vores eksempler vil vi se på at arbejde med Microsoft SQL Server som vores database. Til læringsformål kan man downloade og bruge Microsoft SQL Server Express udgave, som er en gratis databasesoftware leveret af Microsoft.
I arbejdet med databaser er følgende begreber, der er fælles for alle databaser.
- Forbindelse – For at arbejde med dataene i en database er det første oplagte skridt forbindelsen. Forbindelsen til en database består normalt af nedenstående parametre.
- Databasenavn eller datakilde – Den første vigtige parameter er databasenavnet, som forbindelsen skal oprettes til. Hver forbindelse kan kun fungere med én database ad gangen.
- Legitimationsoplysninger – Det næste vigtige aspekt er brugernavnet og adgangskoden, som skal bruges til at oprette forbindelse til databasen. Det sikrer, at brugernavnet og adgangskoden har de nødvendige rettigheder til at oprette forbindelse til databasen.
- Valgfri parametre – For hver databasetype kan du angive valgfri parametre for at give mere information om, hvordan .net skal håndtere forbindelsen til databasen. For eksempel kan man angive en parameter for, hvor længe forbindelsen skal forblive aktiv. Hvis der ikke udføres nogen handling i et bestemt tidsrum, vil parameteren bestemme, om forbindelsen skal lukkes.
- Valg af data fra databasen – Når forbindelsen er etableret, er det næste vigtige aspekt at hente dataene fra databasen. C# kan udføre 'SQL' select kommando mod databasen. 'SQL'-sætningen kan bruges til at hente data fra en specifik tabel i databasen.
- Indsættelse af data i databasen – C# kan også bruges til at indsætte poster i databasen. Værdier kan angives i C# for hver række, der skal indsættes i databasen.
- Opdatering af data til databasen – C# kan også bruges til at opdatere eksisterende poster i databasen. Nye værdier kan angives i C# for hver række, der skal opdateres i databasen.
- Sletning af data fra en database – C# kan også bruges til at slette poster i databasen. Vælg kommandoer for at angive, hvilke rækker der skal slettes, kan angives i C#.
Ok, nu hvor vi har set teorien om hver operation, lad os springe ind i de yderligere afsnit for at se på, hvordan vi kan udføre databaseoperationer i C#.
SQL-kommando i c#
SqlCommand i C# tillade brugeren at forespørge og sende kommandoerne til databasen. SQL-kommandoen er angivet af SQL-forbindelsesobjektet. Der bruges to metoder, ExecuteReader-metoden til resultater af forespørgsel og ExecuteNonQuery til indsættelse, opdatering og sletning af kommandoer. Det er den metode, der er bedst til de forskellige kommandoer.
Sådan forbinder du C# til databasen
Lad os nu se på koden, som skal holdes på plads for at skabe en forbindelse til en database. I vores eksempel vil vi oprette forbindelse til en database, som har navnet Demodb. De legitimationsoplysninger, der bruges til at oprette forbindelse til databasen, er angivet nedenfor
- Brugernavn – sa
- Adgangskode – demo123
Vi vil se en enkel Windows formularer ansøgning at arbejde med databaser. Vi vil have en simpel knap kaldet "Connect", som vil blive brugt til at oprette forbindelse til databasen.
Så lad os følge nedenstående trin for at opnå dette
Trin 1) Det første trin involverer oprettelsen af et nyt projekt i Visual Studio. Efter at have startet Visual Studio, skal du vælge menupunktet Nyt->Projekt.
Trin 2) Det næste trin er at vælge projekttypen som en Windows Ansøgning om formularer. Her skal vi også nævne navnet og placeringen af vores projekt.
- I projektdialogboksen kan vi se forskellige muligheder for at oprette forskellige typer projekter i Visual Studio. Klik på Windows mulighed i venstre side.
- Når vi klikker på Windows muligheder i det foregående trin, vil vi kunne se en mulighed for Windows Ansøgning om formularer. Klik på denne mulighed.
- Vi giver derefter et navn til applikationen, som i vores tilfælde er "DemoApplication". Vi skal også angive en placering til at gemme vores applikation.
- Til sidst klikker vi på 'OK'-knappen for at lade Visual Studio oprette vores projekt.
Trin 3) Tilføj nu en knap fra værktøjskassen til Windows form. Indsæt tekstegenskaben for knappen som Connect. Sådan kommer det til at se ud
Trin 4) Dobbeltklik nu på formularen, så der tilføjes en hændelseshandler til koden for knapklik-hændelsen. Tilføj nedenstående kode i hændelseshandleren.
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(); } } }
Kodeforklaring:-
- Det første trin er at oprette variabler, som vil blive brugt til at oprette forbindelsesstrengen og forbindelsen til SQL Server-databasen.
- Det næste trin er at oprette forbindelsesstrengen. Forbindelsesstrengen skal angives korrekt, for at C# kan forstå forbindelsesstrengen. Forbindelsesstrengen består af følgende dele
- Datakilde – Dette er navnet på den server, som databasen ligger på. I vores tilfælde ligger den på en maskine kaldet WIN-50GP30FGO75.
- Det oprindelige katalog bruges til at angive navnet på databasen
- Bruger-id'et og adgangskoden er de legitimationsoplysninger, der kræves for at oprette forbindelse til databasen.
- Dernæst tildeler vi forbindelsesstrengen til variablen cnn. Variablen cnn, som er af typen SqlConnection, bruges til at etablere forbindelsen til databasen.
- Dernæst bruger vi Open-metoden for cnn-variablen til at åbne en forbindelse til databasen. Vi viser så blot en besked til brugeren om, at forbindelsen er etableret.
- Når operationen er gennemført med succes, lukker vi forbindelsen til databasen. Det er altid en god praksis at lukke forbindelsen til databasen, hvis der ikke kræves andet på databasen.
Når ovenstående kode er indstillet, og projektet udføres ved hjælp af Visual Studio, får du nedenstående output. Når formularen vises, skal du klikke på knappen Tilslut.
Produktion:-
Når du klikker på "tilslut"-knappen, fra outputtet, kan du se, at databaseforbindelsen blev etableret. Derfor blev meddelelsesboksen vist.
Få adgang til data med SqlDataReader
For at vise, hvordan data kan tilgås ved hjælp af C#, lad os antage, at vi har følgende artefakter i vores database.
- Et bord kaldet demotb. Denne tabel vil blive brugt til at gemme ID og navne på forskellige Tutorials.
- Tabellen vil have 2 kolonner, en kaldet "TutorialID" og den anden kaldet "TutorialName."
- I øjeblikket vil tabellen have 2 rækker som vist nedenfor.
Tutorial-ID | Tutorial Navn |
---|---|
1 | C# |
2 | ASP.Net |
Lad os ændre koden i vores formular, så vi kan forespørge efter disse data og vise oplysningerne via en beskedboks. Bemærk, at al den kode, der er indtastet nedenfor, er en fortsættelse af koden skrevet til dataforbindelsen i det foregående afsnit.
Trin 1) Lad os dele koden op i 2 dele, så den bliver let at forstå for brugeren.
- Den første vil være at konstruere vores "select"-sætning, som vil blive brugt til at læse data fra databasen.
- Vi vil derefter udføre "select"-sætningen mod databasen og hente alle tabelrækkerne i overensstemmelse hermed.
Kodeforklaring:-
- Det første trin er at oprette følgende variabler
- SQLCommand – 'SQLCommand' er en klasse defineret i C#. Denne klasse bruges til at udføre operationer med at læse og skrive ind i databasen. Derfor er det første skridt at sikre, at vi opretter en variabel type af denne klasse. Denne variabel vil derefter blive brugt i de efterfølgende trin med at læse data fra vores database.
- DataReader-objektet bruges til at hente alle data specificeret af SQL-forespørgslen. Vi kan så læse alle tabelrækkerne én efter én ved hjælp af datalæseren.
- Vi definerer derefter 2 strengvariabler, den ene er "SQL" for at holde vores SQL-kommandostreng. Det næste er "Output", som vil indeholde alle tabelværdierne.
- Det næste trin er at definere SQL-sætningen, som vil blive brugt mod vores database. I vores tilfælde er det "Vælg TutorialID, TutorialName fra demotb". Dette vil hente alle rækkerne fra tabellen demotb.
- Dernæst opretter vi kommandoobjektet, som bruges til at udføre SQL-sætningen mod databasen. I SQL-kommandoen skal du videregive forbindelsesobjektet og SQL-strengen.
- Dernæst vil vi udføre datalæser-kommandoen, som vil hente alle rækkerne fra demotb-tabellen.
- Nu hvor vi har alle rækkerne i tabellen med os, har vi brug for en mekanisme til at få adgang til rækken én efter én. Til dette vil vi bruge while-sætningen. While-sætningen vil blive brugt til at få adgang til rækkerne fra datalæseren én ad gangen. Vi bruger derefter GetValue-metoden til at få værdien af TutorialID og TutorialName.
Trin 2) I det sidste trin vil vi bare vise outputtet til brugeren og lukke alle objekter relateret til databaseoperationen.
Kodeforklaring:-
- Vi fortsætter vores kode ved at vise værdien af outputvariablen ved hjælp af meddelelsenBox. Output-variablen vil indeholde alle værdierne fra demotb-tabellen.
- Vi lukker endelig alle objekter relateret til vores databasedrift. Husk, at dette altid er en god praksis.
Når ovenstående kode er indstillet, og projektet køres ved hjælp af Visual Studio, får du nedenstående output. Når formularen vises, skal du klikke på knappen Tilslut.
Produktion:-
Fra outputtet kan du tydeligt se, at programmet var i stand til at hente værdierne fra databasen. Dataene vises derefter i meddelelsesboksen.
C# Indsæt i databasen
Ligesom Adgang til data har C# også mulighed for at indsætte poster i databasen. For at vise, hvordan man indsætter poster i vores database, lad os tage den samme tabelstruktur, som blev brugt ovenfor.
Tutorial-ID | Tutorial Navn |
---|---|
1 | C# |
2 | ASP.Net |
Lad os ændre koden i vores formular, så vi kan indsætte følgende række i tabellen
Tutorial-ID | Tutorial Navn |
---|---|
3 | VB.Net |
Så lad os tilføje følgende kode til vores program. Nedenstående kodestykke vil blive brugt til at indsætte en eksisterende post i vores database.
Kodeforklaring:-
- Det første trin er at oprette følgende variabler
- SQLCommand - Denne datatype bruges til at definere objekter, der bruges til at udføre SQL-operationer mod en database. Dette objekt vil indeholde SQL-kommandoen, som kører mod vores SQL Server-database.
- DataAdapter-objektet bruges til at udføre specifikke SQL-operationer, såsom indsættelse, sletning og opdatering af kommandoer.
- Vi definerer derefter en strengvariabel, som er "SQL" til at holde vores SQL-kommandostreng.
- Det næste trin er faktisk at definere SQL-sætningen, som vil blive brugt mod vores database. I vores tilfælde udsender vi en insert-erklæring, som vil indsætte registreringen af TutorialID=1 og TutorialName=VB.Net
- Dernæst opretter vi kommandoobjektet, som bruges til at udføre SQL-sætningen mod databasen. I SQL-kommandoen skal du videregive forbindelsesobjektet og SQL-strengen
- I vores dataadapterkommando knytter vi nu kommandoen indsæt SQL til vores adapter. Vi udsteder også derefter ExecuteNonQuery-metoden, som bruges til at udføre Insert-sætningen mod vores database. 'ExecuteNonQuery'-metoden bruges i C# til at udstede DML-sætninger mod databasen. Med DML-sætninger mener vi indsættelse, sletning og opdatering. I C#, hvis du ønsker at udstede nogen af disse udsagn mod en tabel, skal du bruge ExecuteNonQuery-metoden.
- Vi lukker endelig alle objekter relateret til vores databasedrift. Husk, at dette altid er en god praksis.
Når ovenstående kode er indstillet, og projektet udføres ved hjælp af Visual Studio, får du nedenstående output. Når formularen vises, skal du klikke på knappen Tilslut.
Produktion:-
Hvis du går til SQL Server Express og ser rækkerne i demotb-tabellen, vil du se rækken indsat som vist nedenfor
C# Opdater database
Ligesom Adgang til data har C# også mulighed for at opdatere eksisterende poster fra databasen. For at vise, hvordan man opdaterer poster i vores database, lad os tage den samme tabelstruktur, som blev brugt ovenfor.
Tutorial-ID | Tutorial Navn |
---|---|
1 | C# |
2 | ASP.Net |
3 | VB.Net |
Lad os ændre koden i vores formular, så vi kan opdatere den følgende række. Den gamle rækkeværdi er TutorialID som "3" og Tutorial Name som "VB.Net". Hvilket vi vil opdatere det til "VB.Net komplet", mens rækkeværdien for Tutorial ID forbliver den samme.
Gammel række
Tutorial-ID | Tutorial Navn |
---|---|
3 | VB.Net |
Ny række
Tutorial-ID | Tutorial Navn |
---|---|
3 | VB.Net komplet |
Så lad os tilføje følgende kode til vores program. Nedenstående kodestykke vil blive brugt til at opdatere en eksisterende post i vores database.
C# SqlCommand Eksempel med kodeforklaring:-
- Det første trin er at oprette følgende variabler
- SQLCommand - Denne datatype bruges til at definere objekter, der bruges til at udføre SQL-operationer mod en database. Dette objekt vil indeholde SQL-kommandoen, som kører mod vores SQL Server-database.
- Dataadapterobjektet bruges til at udføre specifikke SQL-handlinger såsom indsæt, slet og opdateringskommandoer.
- Vi definerer derefter en strengvariabel, som er SQL til at holde vores SQL-kommandostreng.
- Det næste trin er at definere SQL-sætningen, som skal bruges mod vores database. I vores tilfælde udsender vi en opdateringserklæring, dette vil opdatere selvstudienavnet til "VB.Net Complete", mens TutorialID er uændret og bevares som 3.
- Dernæst vil vi oprette kommandoobjektet, som bruges til at udføre SQL-sætningen mod databasen. I SQL-kommandoen har du videregivet forbindelsesobjektet og SQL-strengen.
- I vores dataadapterkommando knytter vi nu kommandoen indsæt SQL til vores adapter. Vi udsteder også derefter ExecuteNonQuery-metoden, som bruges til at udføre Update-sætningen mod vores database.
- Vi lukker endelig alle objekter relateret til vores databasedrift. Husk, at dette altid er en god praksis.
Når ovenstående kode er indstillet, og projektet udføres ved hjælp af Visual Studio, får du nedenstående output. Når formularen vises, skal du klikke på knappen Tilslut.
Produktion:-
Hvis du rent faktisk går til SQL Server Express og ser rækkerne i demotb-tabellen, vil du se, at rækken blev opdateret som vist nedenfor.
Sletning af poster
Ligesom Adgang til data har C# også mulighed for at slette eksisterende poster fra databasen. For at vise, hvordan man sletter poster i vores database, lad os tage den samme tabelstruktur, som blev brugt ovenfor.
Tutorial-ID | Tutorial Navn |
---|---|
1 | C# |
2 | ASP.Net |
3 | VB.Net komplet |
Lad os ændre koden i vores formular, så vi kan slette følgende række
Tutorial-ID | Tutorial Navn |
---|---|
3 | VB.Net komplet |
Så lad os tilføje følgende kode til vores program. Nedenstående kodestykke vil blive brugt til at slette en eksisterende post i vores database.
Kodeforklaring:-
- Den vigtigste forskel i denne kode er, at vi nu udsteder delete SQL-sætningen. Delete-sætningen bruges til at slette rækken i demotb-tabellen, hvor TutorialID'et har en værdi på 3.
- I vores dataadapterkommando knytter vi nu kommandoen indsæt SQL til vores adapter. Vi udsteder også derefter ExecuteNonQuery-metoden, som bruges til at udføre Delete-sætningen mod vores database.
Når ovenstående kode er indstillet, og projektet udføres ved hjælp af Visual Studio, får du nedenstående output. Når formularen vises, skal du klikke på knappen Tilslut.
Produktion:-
Hvis du rent faktisk går til SQL Server Express og ser rækkerne i demotb-tabellen, vil du se, at rækken er blevet slettet som vist nedenfor.
Tilslutning af kontroller til data
I de tidligere afsnit har vi set, hvordan vi kan bruge C#-kommandoer som SQLCommand og SQLReader til at hente data fra en database. Vi så også, hvordan vi læser hver række i tabellen og bruger en beskedboks til at vise indholdet af en tabel til brugeren.
Men naturligvis ønsker brugere ikke at se data sendt via beskedbokse og ønsker bedre kontrol til at vise dataene. Lad os tage nedenstående datastruktur i en tabel
Tutorial-ID | Tutorial Navn |
---|---|
1 | C# |
2 | ASP.Net |
3 | VB.Net komplet |
Fra ovenstående datastruktur vil brugeren ideelt set ønske at se TutorialID og Tutorial Name vist i en tekstboks. For det andet vil de måske have en form for knapkontrol, som kunne tillade dem at gå til den næste post eller til den forrige post i tabellen. Dette ville kræve lidt ekstra kodning fra udviklerens ende.
Den gode nyhed er, at C# kan reducere den ekstra kodningsindsats ved at tillade binding af kontroller til data. Hvad dette betyder er, at C# automatisk kan udfylde værdien af tekstboksen i henhold til et bestemt felt i tabellen.
Så du kan have 2 tekstbokse i en Windows-form. Du kan derefter knytte en tekstboks til feltet TutorialID og en anden tekstboks til feltet TutorialName. Denne linkning udføres i selve Visual Studio-designeren, og du behøver ikke at skrive ekstra kode til dette.
Visual Studio vil sikre, at den skriver koden for dig for at sikre, at linkingen fungerer. Når du derefter kører dit program, vil tekstbokskontrollerne automatisk oprette forbindelse til databasen, hente dataene og vise dem i tekstboksens kontroller. Der kræves ingen kodning fra udviklerens ende for at opnå dette.
Lad os se på et kodeeksempel på, hvordan vi kan opnå binding af kontroller.
I vores eksempel skal vi oprette 2 tekstbokse på Windows-formularen. De vil repræsentere henholdsvis Tutorial ID og Tutorial Navn. De vil være bundet til felterne Tutorial ID og TutorialName i databasen i overensstemmelse hermed.
Lad os følge nedenstående trin for at opnå dette.
Trin 1) Konstruer grundformen. Træk og slip 2 komponenter i formularen - etiketter og tekstbokse. Udfør derefter følgende undertrin
- Indsæt tekstværdien for den første etiket som TutorialID
- Indsæt tekstværdien for den anden etiket som TutorialName
- Indsæt navnegenskaben for den første tekstboks som txtID
- Indsæt navnegenskaben for den anden tekstboks som txtName
Nedenfor er, hvordan formularen vil se ud, når de ovennævnte trin er udført.
Trin 2) Det næste trin er at tilføje en bindende Navigator til formularen. Den bindende Navigator-kontrol kan automatisk navigere gennem hver række i tabellen. For at tilføje bindingsnavigatoren skal du blot gå til værktøjskassen og trække den til formularen.
Trin 3) Det næste trin er at tilføje en binding til vores database. Dette kan gøres ved at gå til en hvilken som helst tekstbokskontrol og klikke på egenskaben DataBindings->Text. Binding Navigator bruges til at etablere et link fra din applikation til en database.
Når du udfører dette trin, tilføjer Visual Studio automatisk den nødvendige kode til applikationen for at sikre, at applikationen er linket til databasen. Normalt omtales databasen i Visual Studio som en projektdatakilde. Så for at sikre, at forbindelsen er etableret mellem applikationen og databasen, er det første skridt at oprette en projektdatakilde.
Følgende skærm vises. Klik på linket "Tilføj projektdatakilde". Når du klikker på projektdatakilden, vil du blive præsenteret for en guide; dette giver dig mulighed for at definere databaseforbindelsen.
Trin 4) Når du klikker på linket Tilføj projektdatakilde, vil du blive præsenteret for en guide, som vil blive brugt til at oprette en forbindelse til demotb-databasen. De følgende trin viser i detaljer, hvad der skal konfigureres under hvert trin i guiden.
- På skærmbilledet, der dukker op, skal du vælge typen Datakilde som Database og derefter klikke på knappen næste.
- På det næste skærmbillede skal du starte oprettelsen af forbindelsesstrengen til databasen. Forbindelsesstrengen er påkrævet for, at applikationen kan etablere en forbindelse til databasen. Den indeholder parametre såsom servernavn, databasenavn og navnet på driveren.
- Klik på knappen Ny forbindelse
- Vælg datakilden som Microsoft SQL Server
- Klik på knappen Fortsæt.
- Dernæst skal du tilføje legitimationsoplysningerne for at oprette forbindelse til databasen
- Vælg det servernavn, som SQL Serveren ligger på
- Indtast bruger-id og adgangskode for at oprette forbindelse til databasen
- Vælg databasen som demotb
- Klik på 'ok'-knappen.
- På dette skærmbillede bekræfter vi alle de indstillinger, der blev udført på de tidligere skærme.
- Vælg indstillingen "Ja" for at inkludere følsomme data i forbindelsesstrengen
- Klik på knappen "Næste".
- På det næste skærmbillede skal du klikke på knappen "Næste" for at bekræfte oprettelsen af forbindelsesstrengen
- I dette trin,
- Vælg tabellerne for Demotb, som vil blive vist på næste skærmbillede.
- Denne tabel bliver nu en tilgængelig datakilde i C#-projektet
Når du klikker på knappen Afslut, Visual Studio vil nu sikre, at applikationen kan forespørge alle rækkerne i tabellen Demotb.
Trin 5) Nu hvor datakilden er defineret, skal vi nu forbinde TutorialID og TutorialName tekstboksen til demotb-tabellen. Når du klikker på tekstegenskaben for enten TutorialID eller TutorialName tekstboksen, vil du nu se, at bindingskilden til Demotb er tilgængelig.
For den første tekstboks skal du vælge Tutorial ID. Gentag dette trin for den anden tekstboks, og vælg feltet som TutorialName. Nedenstående trin viser, hvordan vi kan navigere til hver kontrol og ændre bindingen i overensstemmelse hermed.
- Klik på kontrollen Tutorial ID.
- I vinduet Egenskaber vil du se egenskaberne for tekstboksen TutorialID. Gå til tekstegenskaben og klik på pil ned-knappen.
- Når du klikker på pil ned-knappen, vil du se indstillingen demotbBinding Source. Og under dette vil du se mulighederne for TutorialName og TutorialID. Vælg selvstudie-id en.
Gentag ovenstående 3 trin for tekstboksen Tutorial Name.
- Så klik på tekstboksen Tutorial Name
- Gå til egenskabsvinduet
- Vælg egenskaben Tekst
- Vælg indstillingen TutorialName under demotbBindingSource
Trin 6) Dernæst skal vi ændre Binding Source-egenskaben for BindingNavigator til at pege på vores Demotb-datakilde. Grunden til at vi gør dette er, at Binding Navigator også skal vide, hvilken tabel den skal referere til.
Binding Navigator bruges til at vælge den næste eller forrige post i tabellen. Så selvom datakilden er tilføjet til projektet som helhed og til tekstbokskontrollen, skal vi stadig sikre, at Binding Navigator også har et link til vores datakilde. For at gøre dette skal vi klikke på Binding-navigator-objektet, gå til egenskaben Binding Source og vælge den, der er tilgængelig
Dernæst skal vi gå til vinduet Egenskaber, så vi kan foretage ændringen til egenskaben Binding Source.
Når alle ovenstående trin er udført med succes, vil du få nedenstående output.
Produktion:-
Nu når projektet er lanceret, kan du se, at tekstboksene automatisk får værdierne fra tabellen.
Når du klikker på knappen Næste på Navigator, går den automatisk til den næste post i tabellen. Og værdierne for den næste post kommer automatisk i tekstboksene
C# DataGridView
Datagitter bruges til at vise data fra en tabel i et gitterlignende format. Når en bruger ser tabeldata, foretrækker de normalt at se alle tabelrækkerne i ét skud. Dette kan opnås, hvis vi kan vise dataene i et gitter på formularen.
C# og Visual Studio har indbyggede datagitter, dette kan bruges til at vise data. Lad os tage et kig på et eksempel på dette. I vores eksempel vil vi have et datagitter, som vil blive brugt til at vise Tutorial ID og Tutorial Name værdier fra demotb tabellen.
Trin 1) Træk DataGridView-kontrollen fra værktøjskassen til formularen i Visual Studio. DataGridView-kontrollen bruges i Visual Studio til at vise rækkerne i en tabel i et gitterlignende format.
Trin 2) I næste trin skal vi forbinde vores datanet til databasen. I sidste afsnit havde vi lavet en projektdatakilde. Lad os bruge den samme datakilde i vores eksempel.
- Først skal du vælge gitteret og klikke på pilen i gitteret. Dette vil få vist indstillingerne for gitterkonfigurationen.
- I konfigurationsmulighederne skal du blot vælge datakilden som demotbBindingSource, som var datakilden oprettet i det tidligere afsnit.
Hvis alle ovenstående trin udføres som vist, vil du få nedenstående output.
Produktion:-
Fra outputtet kan du se, at gitteret var udfyldt af værdierne fra databasen.
Resumé
- C# SQL kan arbejde med databaser som f.eks Oracle og Microsoft SQL Server.
- Denne C# database tutorial har alle de kommandoer, der er nødvendige for at arbejde med databaser. Dette indebærer etablering af en forbindelse til databasen. Du kan udføre handlinger såsom at vælge, opdatere, indsætte og slette ved hjælp af kommandoerne i C#.
- DataReader-objektet i C# bruges til at holde alle de data, der returneres af databasen. While-løkken i C# kan bruges til at læse datarækkerne én ad gangen.
- Dataadapterobjektet bruges til at udføre SQL-handlinger såsom indsættelse, sletning og opdatering mod databasen.
- C# kan binde kontroller til de forskellige felter i en tabel. De er bundet ved at definere en datakilde i C#. Datakilden bruges til at trække data fra databasen og udfylde dem i kontrollerne.
- Bindingsnavigatoren bruges til automatisk at navigere gennem rækkerne i en tabel.
- Datagitteret i C# kan oprette forbindelse til databasen og vise alle værdierne fra tabellen i et gitterlignende format.