Toegang krijgen tot gegevens uit een database is een van de belangrijke aspecten van elke programmeertaal. Het is een absolute noodzaak voor elke programmeertaal om met databases te kunnen werken. C # is niet anders.
Het kan met verschillende soorten databases werken. Het kan werken met de meest voorkomende databases zoals Oracle en Microsoft SQL Server.
Het kan ook werken met nieuwe vormen van databases zoals MongoDB en MySQL.
In deze zelfstudie over C # sql-verbinding leert u:
- Grondbeginselen van database-connectiviteit
- Hoe C # met Database te verbinden
- Toegang tot gegevens met de SqlDataReader
- C # invoegen in database
- Records bijwerken
- Records verwijderen
- Besturingselementen verbinden met gegevens
- C # DataGridView
Grondbeginselen van database-connectiviteit
C # en .Net kunnen met de meeste databases werken, waarvan Oracle en Microsoft SQL Server de meest voorkomende zijn. Maar bij elke database is de logica achter het werken met alle databases grotendeels hetzelfde.
In onze voorbeelden zullen we kijken naar het werken met de Microsoft SQL Server als onze database. Voor leerdoeleinden kan men de Microsoft SQL Server Express Edition downloaden en gebruiken , een gratis databasesoftware die door Microsoft wordt geleverd.
Bij het werken met databases zijn de volgende concepten die voor alle databases gelden.
- Verbinding - Om met de gegevens in een database te werken, is de eerste voor de hand liggende stap de verbinding. De verbinding met een database bestaat normaal gesproken uit de onderstaande parameters.
- Databasenaam of gegevensbron - De eerste belangrijke parameter is de databasenaam waarmee de verbinding tot stand moet worden gebracht. Elke verbinding kan maar met één database tegelijk werken.
- Inloggegevens - Het volgende belangrijke aspect is de gebruikersnaam en het wachtwoord die moeten worden gebruikt om een verbinding met de database tot stand te brengen. Het zorgt ervoor dat de gebruikersnaam en het wachtwoord de nodige rechten hebben om verbinding te maken met de database.
- Optionele parameters - Voor elk databasetype kunt u optionele parameters specificeren om meer informatie te geven over hoe .net de verbinding met de database moet afhandelen. Men kan bijvoorbeeld een parameter specificeren hoe lang de verbinding actief moet blijven. Als er gedurende een bepaalde tijd geen bewerking wordt uitgevoerd, bepaalt de parameter of de verbinding moet worden verbroken.
- Gegevens uit de database selecteren - Zodra de verbinding tot stand is gebracht, is het volgende belangrijke aspect het ophalen van de gegevens uit de database. C # kan de 'SQL'-selectieopdracht uitvoeren voor de database. De 'SQL'-instructie kan worden gebruikt om gegevens op te halen uit een specifieke tabel in de database.
- Gegevens in de database invoegen - C # kan ook worden gebruikt om records in de database in te voegen. Waarden kunnen in C # worden opgegeven voor elke rij die in de database moet worden ingevoegd.
- Updaten van gegevens in de database - C # kan ook worden gebruikt om bestaande records in de database bij te werken. Nieuwe waarden kunnen worden opgegeven in C # voor elke rij die moet worden bijgewerkt in de database.
- Gegevens verwijderen uit een database - C # kan ook worden gebruikt om records in de database te verwijderen. Selecteer opdrachten om te specificeren welke rijen moeten worden verwijderd, kunnen worden gespecificeerd in C #.
Ok, nu we de theorie van elke bewerking hebben gezien, gaan we naar de volgende secties om te kijken hoe we databasebewerkingen in C # kunnen uitvoeren.
SQL-opdracht in c #
Met SqlCommand in C # kan de gebruiker de opdrachten opvragen en naar de database verzenden. SQL-opdracht wordt gespecificeerd door het SQL-verbindingsobject. Er worden twee methoden gebruikt: de methode ExecuteReader voor resultaten van een query en ExecuteNonQuery voor opdrachten voor invoegen, bijwerken en verwijderen. Het is de methode die het beste is voor de verschillende opdrachten.
Hoe C # met Database te verbinden
Laten we nu eens kijken naar de code, die op zijn plaats moet worden gehouden om een verbinding met een database tot stand te brengen. In ons voorbeeld zullen we verbinding maken met een database die de naam Demodb heeft. De inloggegevens die worden gebruikt om verbinding te maken met de database, worden hieronder gegeven
- Gebruikersnaam - sa
- Wachtwoord - demo123
We zullen een eenvoudige Windows-formuliertoepassing zien om met databases te werken. We zullen een eenvoudige knop hebben genaamd "Connect" die zal worden gebruikt om verbinding te maken met de database.
Dus laten we de onderstaande stappen volgen om dit te bereiken
Stap 1) De eerste stap betreft het maken van een nieuw project in Visual Studio. Nadat u Visual Studio heeft gestart, moet u de menuoptie Nieuw-> Project kiezen.
Stap 2) De volgende stap is om het projecttype te kiezen als een Windows Forms-applicatie. Hier moeten we ook de naam en locatie van ons project vermelden.
- In het projectdialoogvenster kunnen we verschillende opties zien voor het maken van verschillende soorten projecten in Visual Studio. Klik op de Windows-optie aan de linkerkant.
- Wanneer we in de vorige stap op de Windows-opties klikken, kunnen we een optie voor Windows Forms-toepassing zien. Klik op deze optie.
- We geven dan een naam voor de applicatie die in ons geval "DemoApplication" is. We moeten ook een locatie opgeven om onze applicatie op te slaan.
- Ten slotte klikken we op de knop 'OK' om Visual Studio ons project te laten maken.
Stap 3) Voeg nu een knop uit de toolbox toe aan het Windows-formulier. Zet de teksteigenschap van de Button als Connect. Dit is hoe het eruit zal zien
Stap 4) Dubbelklik nu op het formulier zodat een gebeurtenishandler wordt toegevoegd aan de code voor de knopklikgebeurtenis. Voeg in de gebeurtenishandler de onderstaande code toe.
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();}}}
Code Verklaring: -
- De eerste stap is het maken van variabelen, die zullen worden gebruikt om de verbindingsreeks en de verbinding met de SQL Server-database te maken.
- De volgende stap is het maken van de verbindingsreeks. De verbindingsreeks moet correct worden opgegeven zodat C # de verbindingsreeks begrijpt. De verbindingsreeks bestaat uit de volgende onderdelen
- Gegevensbron - Dit is de naam van de server waarop de database zich bevindt. In ons geval bevindt het zich op een machine met de naam WIN-50GP30FGO75.
- De initiële catalogus wordt gebruikt om de naam van de database op te geven
- De gebruikersnaam en het wachtwoord zijn de gegevens die nodig zijn om verbinding te maken met de database.
- Vervolgens wijzen we de verbindende string toe aan de variabele cnn. De variabele cnn, van het type SqlConnection, wordt gebruikt om de verbinding met de database tot stand te brengen.
- Vervolgens gebruiken we de Open-methode van de cnn-variabele om een verbinding met de database te openen. We tonen dan gewoon een bericht aan de gebruiker dat de verbinding tot stand is gebracht.
- Zodra de bewerking met succes is voltooid, sluiten we de verbinding met de database. Het is altijd een goede gewoonte om de verbinding met de database te verbreken als er niets anders op de database hoeft te worden gedaan.
Wanneer de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, krijgt u de onderstaande uitvoer. Zodra het formulier is weergegeven, klikt u op de knop Verbinden.
Uitgang: -
Wanneer u op de knop "verbinden" klikt, kunt u vanuit de output zien dat de databaseverbinding tot stand is gebracht. Daarom werd het berichtvenster weergegeven.
Toegang tot gegevens met de SqlDataReader
Laten we aannemen dat we de volgende artefacten in onze database hebben om te laten zien hoe toegang tot gegevens kan worden verkregen met behulp van C #.
- Een tabel met de naam demotb. Deze tabel wordt gebruikt om de ID en namen van verschillende tutorials op te slaan.
- De tabel heeft 2 kolommen, een met de naam "TutorialID" en de andere met de naam "TutorialName."
- Op dit moment heeft de tabel 2 rijen, zoals hieronder weergegeven.
TutorialID |
TutorialName |
1 |
C # |
2 |
ASP.Net |
Laten we de code in ons formulier wijzigen, zodat we deze gegevens kunnen opvragen en de informatie kunnen weergeven via een berichtenbox. Merk op dat alle onderstaande code een voortzetting is van de code die in de vorige sectie voor de gegevensverbinding is geschreven.
Stap 1) Laten we de code opsplitsen in 2 delen, zodat deze gemakkelijk te begrijpen is voor de gebruiker.
- De eerste zal zijn om onze "select" -instructie te construeren, die zal worden gebruikt om de gegevens uit de database te lezen.
- We zullen dan de "select" -instructie uitvoeren voor de database en alle tabelrijen overeenkomstig ophalen.
Code Verklaring: -
- De eerste stap is het maken van de volgende variabelen
- SQLCommand - De 'SQLCommand' is een klasse gedefinieerd in C #. Deze klasse wordt gebruikt om bewerkingen uit te voeren voor het lezen van en schrijven naar de database. Daarom is de eerste stap om ervoor te zorgen dat we een variabel type van deze klasse maken. Deze variabele wordt vervolgens gebruikt in de volgende stappen van het lezen van gegevens uit onze database.
- Het DataReader-object wordt gebruikt om alle gegevens op te halen die door de SQL-query zijn opgegeven. We kunnen dan alle tabelrijen een voor een lezen met behulp van de datalezer.
- Vervolgens definiëren we 2 stringvariabelen, een daarvan is "SQL" om onze SQL-commandostring vast te houden. De volgende is de "Uitvoer" die alle tabelwaarden zal bevatten.
- De volgende stap is het definiëren van de SQL-instructie, die zal worden gebruikt voor onze database. In ons geval is het "Selecteer TutorialID, TutorialName van demotb". Hiermee worden alle rijen uit de tabeldemotb opgehaald.
- Vervolgens maken we het commando-object dat wordt gebruikt om de SQL-instructie tegen de database uit te voeren. In de SQL-opdracht moet u het verbindingsobject en de SQL-string doorgeven.
- Vervolgens voeren we de opdracht datalezer uit, waarmee alle rijen uit de demotb-tabel worden opgehaald.
- Nu we alle rijen van de tafel bij ons hebben, hebben we een mechanisme nodig om één voor één toegang te krijgen tot de rij. Hiervoor gebruiken we de while-instructie. De while-instructie wordt gebruikt om één voor één toegang te krijgen tot de rijen vanuit de gegevenslezer. We gebruiken vervolgens de GetValue-methode om de waarde van TutorialID en TutorialName te krijgen.
Stap 2) In de laatste stap zullen we alleen de uitvoer aan de gebruiker laten zien en alle objecten die verband houden met de databasebewerking sluiten.
Code Verklaring: -
- We gaan door met onze code door de waarde van de Output-variabele weer te geven met behulp van de MessageBox. De uitvoervariabele bevat alle waarden uit de demotb-tabel.
- We sluiten eindelijk alle objecten die verband houden met onze databasebewerking. Onthoud dat dit altijd een goede gewoonte is.
Wanneer de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, krijgt u de onderstaande uitvoer. Zodra het formulier is weergegeven, klikt u op de knop Verbinden.
Uitgang: -
Aan de output kun je duidelijk zien dat het programma in staat was om de waarden uit de database te halen. De gegevens worden vervolgens weergegeven in het berichtvenster.
C # invoegen in database
Net als bij toegang tot gegevens, heeft C # de mogelijkheid om ook records in de database in te voegen. Om te laten zien hoe u records in onze database invoegt, nemen we dezelfde tabelstructuur die hierboven werd gebruikt.
TutorialID |
TutorialName |
1 |
C # |
2 |
ASP.Net |
Laten we de code in ons formulier wijzigen, zodat we de volgende rij in de tabel kunnen invoegen
TutorialID |
TutorialName |
3 |
VB.Net |
Dus laten we de volgende code aan ons programma toevoegen. Het onderstaande codefragment wordt gebruikt om een bestaand record in onze database in te voegen.
Code Verklaring: -
- De eerste stap is het maken van de volgende variabelen
- SQLCommand - Dit gegevenstype wordt gebruikt om objecten te definiëren die worden gebruikt om SQL-bewerkingen op een database uit te voeren. Dit object bevat de SQL-opdracht die wordt uitgevoerd op onze SQL Server-database.
- Het DataAdapter-object wordt gebruikt om specifieke SQL-bewerkingen uit te voeren, zoals invoegen, verwijderen en bijwerken van opdrachten.
- Vervolgens definiëren we een stringvariabele, die "SQL" is om onze SQL-commandostring te bevatten.
- De volgende stap is het daadwerkelijk definiëren van de SQL-instructie die voor onze database zal worden gebruikt. In ons geval geven we een insert-instructie uit, die het record van TutorialID = 1 en TutorialName = VB.Net zal invoegen
- Vervolgens maken we het commando-object dat wordt gebruikt om de SQL-instructie tegen de database uit te voeren. In de SQL-opdracht moet u het verbindingsobject en de SQL-string doorgeven
- In onze data-adapteropdracht koppelen we nu de insert SQL-opdracht aan onze adapter. We geven dan ook de ExecuteNonQuery-methode uit die wordt gebruikt om de Insert-instructie voor onze database uit te voeren. De 'ExecuteNonQuery'-methode wordt gebruikt in C # om eventuele DML-instructies voor de database uit te voeren. Met DML-instructies bedoelen we het invoegen, verwijderen en bijwerken. Als u in C # een van deze instructies tegen een tabel wilt afgeven, moet u de methode ExecuteNonQuery gebruiken.
- We sluiten eindelijk alle objecten die verband houden met onze databasebewerking. Onthoud dat dit altijd een goede gewoonte is.
Wanneer de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, krijgt u de onderstaande uitvoer. Zodra het formulier is weergegeven, klikt u op de knop Verbinden.
Uitgang: -
Als u naar SQL Server Express gaat en de rijen in de demotb-tabel ziet, ziet u de rij ingevoegd zoals hieronder weergegeven
C # Database bijwerken
Net als Toegang tot gegevens, heeft C # de mogelijkheid om ook bestaande records uit de database bij te werken. Om te laten zien hoe u records in onze database bijwerkt, nemen we dezelfde tabelstructuur die hierboven werd gebruikt.
TutorialID |
TutorialName |
1 |
C # |
2 |
ASP.Net |
3 |
VB.Net |
Laten we de code in ons formulier wijzigen, zodat we de volgende rij kunnen bijwerken. De oude rijwaarde is TutorialID als "3" en Tutorial Name als "VB.Net". We zullen het updaten naar "VB.Net complete" terwijl de rijwaarde voor Tutorial ID hetzelfde blijft.
Oude rij
TutorialID |
TutorialName |
3 |
VB.Net |
Nieuwe rij
TutorialID |
TutorialName |
3 |
VB.Net voltooid |
Dus laten we de volgende code aan ons programma toevoegen. Het onderstaande codefragment wordt gebruikt om een bestaand record in onze database bij te werken.
C # SqlCommand-voorbeeld met code-uitleg: -
- De eerste stap is het maken van de volgende variabelen
- SQLCommand - Dit gegevenstype wordt gebruikt om objecten te definiëren die worden gebruikt om SQL-bewerkingen op een database uit te voeren. Dit object bevat de SQL-opdracht die wordt uitgevoerd op onze SQL Server-database.
- Het dataadapter-object wordt gebruikt om specifieke SQL-bewerkingen uit te voeren, zoals invoegen, verwijderen en bijwerken van opdrachten.
- Vervolgens definiëren we een stringvariabele, dat is SQL om onze SQL-commandostring vast te houden.
- De volgende stap is het definiëren van de SQL-instructie die voor onze database zal worden gebruikt. In ons geval geven we een update-instructie uit, dit zal de Tutorial-naam updaten naar "VB.Net Complete" terwijl de TutorialID ongewijzigd blijft en behouden blijft als 3.
- Vervolgens maken we het opdrachtobject, dat wordt gebruikt om de SQL-instructie tegen de database uit te voeren. In de SQL-opdracht heb je het verbindingsobject en de SQL-string doorgegeven.
- In onze data-adapteropdracht koppelen we nu de insert SQL-opdracht aan onze adapter. We geven dan ook de ExecuteNonQuery-methode uit die wordt gebruikt om de Update-instructie voor onze database uit te voeren.
- We sluiten eindelijk alle objecten die verband houden met onze databasebewerking. Onthoud dat dit altijd een goede gewoonte is.
Wanneer de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, krijgt u de onderstaande uitvoer. Zodra het formulier is weergegeven, klikt u op de knop Verbinden.
Uitgang: -
Als u daadwerkelijk naar SQL Server Express gaat en de rijen in de demotb-tabel ziet, ziet u dat de rij met succes is bijgewerkt, zoals hieronder wordt weergegeven.
Records verwijderen
Net als bij toegang tot gegevens, heeft C # de mogelijkheid om ook bestaande records uit de database te verwijderen. Om te laten zien hoe u records in onze database kunt verwijderen, nemen we dezelfde tabelstructuur die hierboven werd gebruikt.
TutorialID |
TutorialName |
1 |
C # |
2 |
ASP.Net |
3 |
VB.Net voltooid |
Laten we de code in ons formulier wijzigen, zodat we de volgende rij kunnen verwijderen
TutorialID |
TutorialName |
3 |
VB.Net voltooid |
Dus laten we de volgende code aan ons programma toevoegen. Het onderstaande codefragment wordt gebruikt om een bestaand record in onze database te verwijderen.
Code Verklaring: -
- Het belangrijkste verschil in deze code is dat we nu de SQL-instructie voor verwijderen uitgeven. De delete-instructie wordt gebruikt om de rij in de demotb-tabel te verwijderen waarin de TutorialID de waarde 3 heeft.
- In onze data-adapteropdracht koppelen we nu de insert SQL-opdracht aan onze adapter. We geven dan ook de ExecuteNonQuery-methode uit die wordt gebruikt om de Delete-instructie voor onze database uit te voeren.
Wanneer de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, krijgt u de onderstaande uitvoer. Zodra het formulier is weergegeven, klikt u op de knop Verbinden.
Uitgang: -
Als u daadwerkelijk naar SQL Server Express gaat en de rijen in de demotb-tabel ziet, ziet u dat de rij met succes is verwijderd, zoals hieronder wordt weergegeven.
Besturingselementen verbinden met gegevens
In de eerdere secties hebben we gezien hoe we C # -opdrachten zoals SQLCommand en SQLReader kunnen gebruiken om gegevens uit een database op te halen. We hebben ook gezien hoe we elke rij van de tabel lezen en een berichtenvak gebruiken om de inhoud van een tabel aan de gebruiker te tonen.
Maar het is duidelijk dat gebruikers geen gegevens willen zien die via berichtvakken worden verzonden en dat ze betere bedieningselementen willen om de gegevens weer te geven. Laten we de onderstaande datastructuur in een tabel nemen
TutorialID |
TutorialName |
1 |
C # |
2 |
ASP.Net |
3 |
VB.Net voltooid |
Vanuit de bovenstaande gegevensstructuur zou de gebruiker idealiter de TutorialID en Tutorial Name in een tekstvak willen zien. Ten tweede willen ze misschien een soort knopbediening hebben waarmee ze naar het volgende record of naar het vorige record in de tabel kunnen gaan. Dit zou een beetje extra codering van de kant van de ontwikkelaar vereisen.
Het goede nieuws is dat C # de extra coderingsinspanning kan verminderen door binding van controles aan gegevens mogelijk te maken. Dit betekent dat C # automatisch de waarde van het tekstvak kan vullen volgens een bepaald veld van de tabel.
U kunt dus 2 tekstvakken in een Windows-formulier hebben. U kunt dan een tekstvak aan het TutorialID-veld koppelen en een ander tekstvak aan het TutorialName-veld. Deze koppeling gebeurt in de Visual Studio-ontwerper zelf, en u hoeft hiervoor geen extra code te schrijven.
Visual Studio zorgt ervoor dat het de code voor u schrijft om ervoor te zorgen dat de koppeling werkt. Wanneer u vervolgens uw toepassing start, maken de tekstvakbesturingselementen automatisch verbinding met de database, halen de gegevens op en geven deze weer in de tekstvakbesturingselementen. Om dit te bereiken is geen codering vereist van de kant van de ontwikkelaar.
Laten we eens kijken naar een codevoorbeeld van hoe we bindende besturingselementen kunnen bereiken.
In ons voorbeeld gaan we 2 tekstvakken maken op het Windows-formulier. Ze vertegenwoordigen respectievelijk de Tutorial-ID en de Tutorial-naam. Ze worden dienovereenkomstig gebonden aan de velden Zelfstudie-ID en Zelfstudie-naam van de database.
Laten we de onderstaande stappen volgen om dit te bereiken.
Stap 1) Construeer het basisformulier. Sleep in het formulier 2 componenten - labels en tekstvakken. Voer vervolgens de volgende substappen uit
- Zet de tekstwaarde van het eerste label als TutorialID
- Zet de tekstwaarde van het tweede label als TutorialName
- Zet de eigenschap name van het eerste tekstvak als txtID
- Zet de eigenschap name van het tweede tekstvak als txtName
Hieronder ziet u hoe het formulier eruit zou zien als de bovengenoemde stappen zijn uitgevoerd.
Stap 2) De volgende stap is het toevoegen van een bindende Navigator aan het formulier. De binding Navigator-besturing kan automatisch door elke rij van de tabel navigeren. Om de bindnavigator toe te voegen, gaat u naar de toolbox en sleept u deze naar het formulier.
Stap 3) De volgende stap is het toevoegen van een binding aan onze database. Dit kan worden gedaan door naar een van de Textbox-besturingselementen te gaan en op de DataBind-> Text-eigenschap te klikken. De Binding Navigator wordt gebruikt om een koppeling tot stand te brengen van uw applicatie naar een database.
Wanneer u deze stap uitvoert, voegt Visual Studio automatisch de vereiste code toe aan de applicatie om ervoor te zorgen dat de applicatie aan de database is gekoppeld. Normaal gesproken wordt de database in Visual Studio een projectgegevensbron genoemd. Dus om ervoor te zorgen dat de verbinding tussen de applicatie en de database tot stand wordt gebracht, is de eerste stap het maken van een projectgegevensbron.
Het volgende scherm zal verschijnen. Klik op de link - "Projectgegevensbron toevoegen". Wanneer u op de projectgegevensbron klikt, krijgt u een wizard te zien; hiermee kunt u de databaseverbinding definiëren.
Stap 4) Zodra u op de link Projectgegevensbron toevoegen klikt, krijgt u een wizard te zien die wordt gebruikt om een verbinding met de demotb-database tot stand te brengen. De volgende stappen laten in detail zien wat er tijdens elke stap van de wizard moet worden geconfigureerd.
- In het scherm dat verschijnt, kiest u het type gegevensbron als Database en klikt u vervolgens op de knop Volgende.
- In het volgende scherm moet u beginnen met het maken van de verbindingsreeks naar de database. De verbindingsreeks is vereist voor de toepassing om een verbinding met de database tot stand te brengen. Het bevat de parameters zoals servernaam, databasenaam en de naam van het stuurprogramma.
- Klik op de knop Nieuwe verbinding
- Kies de gegevensbron als Microsoft SQL Server
- Klik op de knop Doorgaan.
- Vervolgens moet u de inloggegevens toevoegen om verbinding te maken met de database
- Kies de servernaam waarop de SQL Server zich bevindt
- Voer de gebruikersnaam en het wachtwoord in om verbinding te maken met de database
- Kies de database als demotb
- Klik op de 'ok'-knop.
- In dit scherm zullen we alle instellingen bevestigen die op de vorige schermen werden uitgevoerd.
- Kies de optie "Ja" om gevoelige gegevens in de verbindingsreeks op te nemen
- Klik op de knop "Volgende".
- Klik in het volgende scherm op de knop "Volgende" om het aanmaken van de verbindingsreeks te bevestigen
- In deze stap
- Kies de tabellen van Demotb, die in het volgende scherm worden weergegeven.
- Deze tabel wordt nu een beschikbare gegevensbron in het C # -project
Als u op de knop Voltooien klikt, zorgt Visual Studio er nu voor dat de toepassing alle rijen in de tabel Demotb kan opvragen.
Stap 5) Nu de gegevensbron is gedefinieerd, moeten we nu het tekstvak TutorialID en TutorialName verbinden met de demotb-tabel. Wanneer u op de Text-eigenschap van ofwel het TutorialID of TutorialName tekstvak klikt, zult u nu zien dat de bindingsbron naar Demotb beschikbaar is.
Kies voor het eerste tekstvak de Tutorial ID. Herhaal deze stap voor het tweede tekstvak en kies het veld als TutorialName. De onderstaande stappen laten zien hoe we naar elk besturingselement kunnen navigeren en de binding dienovereenkomstig kunnen wijzigen.
- Klik op het besturingselement Zelfstudie-ID.
- In het Eigenschappenvenster ziet u de eigenschappen van het TutorialID tekstvak. Ga naar de teksteigenschap en klik op de pijl omlaag.
- Als u op de pijl omlaag klikt, ziet u de optie demotbBinding Source. En hieronder ziet u de opties van TutorialName en TutorialID. Kies de Tutorial-ID.
Herhaal de bovenstaande 3 stappen voor het tekstvak Tutorial Name.
- Dus klik op het tekstvak Tutorial Name
- Ga naar het eigenschappenvenster
- Kies de eigenschap Text
- Kies de optie TutorialName onder demotbBindingSource
Stap 6) Vervolgens moeten we de eigenschap Binding Source van de BindingNavigator wijzigen zodat deze naar onze Demotb-gegevensbron verwijst. De reden dat we dit doen is dat de Binding Navigator ook moet weten naar welke tabel hij moet verwijzen.
De Binding Navigator wordt gebruikt om het volgende of vorige record in de tabel te selecteren. Dus hoewel de gegevensbron wordt toegevoegd aan het project als geheel en aan het tekstvakbesturingselement, moeten we er nog steeds voor zorgen dat de Binding Navigator ook een link naar onze gegevensbron heeft. Om dit te doen, moeten we op het Binding navigator-object klikken, naar de Binding Source-eigenschap gaan en degene kiezen die beschikbaar is
Vervolgens moeten we naar het venster Eigenschappen gaan, zodat we de eigenschap Binding Source kunnen wijzigen.
Als alle bovenstaande stappen met succes zijn uitgevoerd, krijgt u de onderstaande uitvoer.
Uitgang: -
Wanneer het project nu wordt gestart, kunt u zien dat de tekstvakken automatisch de waarden uit de tabel halen.
Wanneer u op de knop Volgende op de Navigator klikt, gaat het automatisch naar het volgende record in de tabel. En de waarden van het volgende record komen automatisch in de tekstvakken
C # DataGridView
Gegevensrasters worden gebruikt om gegevens uit een tabel in een rastervormig formaat weer te geven. Wanneer een gebruiker de tabelgegevens ziet, geeft hij er normaal gesproken de voorkeur aan om alle tabelrijen in één keer te zien. Dit kan worden bereikt als we de gegevens in een raster op het formulier kunnen weergeven.
C # en Visual Studio hebben ingebouwde gegevensrasters, deze kunnen worden gebruikt om gegevens weer te geven. Laten we een voorbeeld hiervan bekijken. In ons voorbeeld hebben we een gegevensraster dat zal worden gebruikt om de zelfstudie-ID en de zelfstudie-naamwaarden uit de demotb-tabel weer te geven.
Stap 1) Sleep het DataGridView-besturingselement van de toolbox naar het formulier in Visual Studio. Het DataGridView-besturingselement wordt in Visual Studio gebruikt om de rijen van een tabel in een rastervormige indeling weer te geven.
Stap 2) In de volgende stap moeten we ons dataraster verbinden met de database. In de laatste sectie hadden we een projectgegevensbron gemaakt. Laten we in ons voorbeeld dezelfde gegevensbron gebruiken.
- Eerst moet u het raster kiezen en op de pijl in het raster klikken. Dit zal de netwerkconfiguratie-opties oproepen.
- Kies in de configuratie-opties de gegevensbron als demotbBindingSource, de gegevensbron die in de eerdere sectie is gemaakt.
Als alle bovenstaande stappen zijn uitgevoerd zoals weergegeven, krijgt u de onderstaande uitvoer.
Uitgang: -
Aan de uitvoer kun je zien dat het raster werd gevuld met de waarden uit de database.
Overzicht
- C # SQL kan werken met databases zoals Oracle en Microsoft SQL Server.
- Deze C # -database-tutorial bevat alle opdrachten die nodig zijn om met databases te werken. Dit omvat het tot stand brengen van een verbinding met de database. U kunt bewerkingen uitvoeren zoals selecteren, bijwerken, invoegen en verwijderen met de opdrachten in C #.
- Het DataReader-object in C # wordt gebruikt om alle gegevens op te slaan die door de database worden geretourneerd. De While-lus in C # kan worden gebruikt om de gegevensrijen één voor één te lezen.
- Het gegevensadapterobject wordt gebruikt om SQL-bewerkingen uit te voeren, zoals invoegen, verwijderen en bijwerken op basis van de database.
- C # kan besturingselementen binden aan de verschillende velden in een tabel. Ze zijn gebonden door het definiëren van een gegevensbron in C #. De gegevensbron wordt gebruikt om de gegevens uit de database te halen en deze in de besturingselementen te vullen.
- De binding navigator wordt gebruikt om automatisch door de rijen in een tabel te navigeren.
- Het gegevensraster in C # kan verbinding maken met de database en alle waarden uit de tabel in een rastervormig formaat weergeven.