Zistite, ako zadávať najbežnejšie príkazy SQL pomocou VB.NET.
VB.NET ponúka efektívny prístup k databázovým operáciám s robustným rámcom. Pomocou jeho výkonu môžete získať relevantné informácie rýchlo a s minimálnym úsilím.
Pozrite si niekoľko praktických príkladov, ktoré ukazujú, ako používať VB.NET na vykonávanie SQL dotazov, a uvidíte, ako môžete zabezpečiť, aby bolo získavanie údajov efektívne a efektívne.
Nastavenie lokálneho servera SQL Server
Začnite nastavením servera SQL, aby ste si všetko mohli prezrieť krok za krokom. V príkladoch nižšie uvidíte prostredie Windows, ale ak používate a iný operačný systém ako Linux a máte iný SQL server, nebojte sa; všeobecná logika zostane rovnaká.
Vďaka svojej jednoduchosti a prístupu nulovej konfigurácie je SQLite vynikajúcou voľbou pre začiatočníkov.
Ak chcete veci nastaviť, vytvorte nový priečinok otvorte príkazový riadok a navigovať k nemu. Spustite nasledujúci príkaz na vytvorenie nového projektu .NET, v ktorom môžete použiť jazyk VB.NET:
dotnet new console -lang VB -o MyVBApp
Teraz máte projekt s názvom MyVBApp. Pokračujte v nastavovaní integráciou balíka SQLite do vášho projektu VB.NET pomocou NuGet, obľúbeného správcu balíkov pre .NET. Spustite tento príkaz:
dotnet add package System.Data.SQLite
Po pridaní SQLite môžete bez námahy nastaviť lokálnu databázu.
Celý kód pre tieto príklady nájdete v projekte úložisko GitHub.
Stiahnite si InitializeDatabase.vb súbor z úložiska projektu. Tento konkrétny súbor vám pomôže nakonfigurovať vašu databázu. Ako môžete vidieť v tomto súbore, existujú niektorí používatelia a krajiny používateľov. Môžete to použiť ako vzorovú databázu.
Príkaz, ktorý ste použili na vytvorenie projektu VB.NET, vytvoril súbor s názvom Program.vb. Otvorte tento súbor a aktualizujte ho nasledovne:
Module Program
Sub Main(args AsString())
DatabaseInitializer.InitializeDb()
EndSub
EndModule
Spustite tento program a mali by ste vidieť, že vytvára súbor s názvom mojadatabaza.db. Toto je jednoduchá databáza, ktorú použijete v nasledujúcich príkladoch.
Vytvorenie databázového spojenia s SQL vo VB.NET
Vytvorenie pripojenia pomocou SQLite vo VB.NET je jednoduché. Pokračujte v úprave Program.vb súbor a odstráňte existujúci obsah hlavného podprogramu. Tento súbor slúži ako jadro projektu.
Pomocou tohto riadku kódu môžete definovať pripojenie k súboru databázy mydatabase.db:
Dim connectionString AsString = "Data Source=mydatabase.db; Version=3;"
Dátový zdroj určuje názov súboru databázy. Ak súbor neexistuje, SQLite po vytvorení spojenia vytvorí novú databázu.
Ďalším krokom je použitie SQLiteConnection triedy na vytvorenie inštancie pripojenia. Vždy by ste mali používať a Použitím blokovať pri práci s databázovými pripojeniami, aby ste sa vyhli potenciálnym únikom alebo uviaznutiu:
Using conn AsNew SQLiteConnection(connectionString)
conn.Open()
' Database operations go here
EndUsing
Blok Using zaisťuje, že sa spojenie po dokončení automaticky uzavrie.
Váš konečný súbor Program.vb by mal vyzerať asi takto:
Imports System
Imports System.Data.SQLiteModule Program
Sub Main(args AsString())
Dim connectionString AsString = "Data Source=mydatabase.db; Version=3;"Try
Using conn AsNew SQLiteConnection(connectionString)
conn.Open()
Console.WriteLine("Successfully connected to the database!")
'You can perform database operations here.
EndUsing
Catch ex As SQLiteException
Console.WriteLine("Error: " & ex.Message)
EndTry
EndSub
EndModule
Tento kód sa pripojí k databáze mydatabase.db a vytlačí potvrdzujúcu správu, keď uspeje. Ak sa vyskytne chyba, vytlačí podrobnosti do konzoly.
Ako načítať údaje a načítať ich do poľa
The VYBRAŤSQL príkaz je hlavný spôsob získavania údajov z databázy SQL. Ak máte tabuľku s názvom Používatelia vo vašej databáze a chcete získať názov pole z každého záznamu v tejto tabuľke použite SELECT takto:
SELECT Name FROM Users
Údaje môžete stiahnuť z databázy a načítať ich do poľa pridaním tohto dotazu do súboru Program.vb:
Dim query AsString = "SELECT Name FROM Users"
Dim names AsNew List(OfString)()Using conn AsNew SQLiteConnection(connectionString)
conn.Open()Using cmd AsNew SQLiteCommand(query, conn)
Using reader As SQLiteDataReader = cmd.ExecuteReader()
While reader.Read()
names.Add(reader("Name").ToString())
EndWhile
EndUsing
EndUsing
EndUsing' Now the 'names' list is full of users' names.
' You can convert this list to an array if you want:
Dim namesArray() AsString = names.ToArray()
' Print array content for testing purposes
ForEach name In namesArray
Console.WriteLine(name)
Next
Na konzole uvidíte zoznam mien zodpovedajúcich obsahu vašej databázovej tabuľky:
Tento kód načíta údaje do a Zoznam štruktúru, ktorá má dynamickú veľkosť, predtým, ako ju po dokončení prevediete na pole. Tento prístup je veľmi užitočný v situáciách, keď vopred nepoznáte počet záznamov, ktoré získate.
Ako používať INSERT na pridávanie údajov do databázy
Môžete použiť VLOŽIŤ DO príkaz na pridanie nových údajov do databázy. Zvážte napríklad Používatelia tabuľka, ktorá má dva pomenované stĺpce názov a Krajina.
Základný SQL dotaz, ktorý môžete použiť na pridanie nového používateľa, by bol:
INSERT INTO Users (Name, Country) VALUES ('Fatih', 'TR')
Ak chcete pridať nového používateľa do databázy pomocou tohto dotazu, aktualizujte súbor Program.vb takto:
Dim query AsString = $"INSERT INTO Users (Name, Country) VALUES ('{name}', '{country}')"
Using conn AsNew SQLiteConnection(connectionString)
conn.Open()Using cmd AsNew SQLiteCommand(query, conn)
cmd.ExecuteNonQuery()
EndUsing
EndUsing
Console.WriteLine($"{name} has been successfully added to the database!")
Tento jednoduchý príklad používa na vytvorenie dotazu interpoláciu reťazcov, ale v produkčnom kóde by ste sa tomu mali vyhnúť, pretože je to tak zraniteľné voči SQL injection. Alternatívou sú parametrizované dotazy, ktoré robia databázové operácie bezpečnejšie a efektívnejšie.
Parametrizované dotazy používajú zástupné symboly namiesto priameho zreťazenia reťazcov na pridávanie hodnôt do dotazov SQL. Tento prístup vám pomôže vyhnúť sa mnohým bezpečnostným hrozbám:
Dim query AsString = "INSERT INTO Users (Name, Country) VALUES (@Name, @Country)"
'...
cmd.Parameters.AddWithValue("@Name", userName)
cmd.Parameters.AddWithValue("@Country", userCountry)
Akékoľvek ďalšie tipy na prácu s databázou z VB.Net
Operácie s databázou vo VB.NET sa môžu spočiatku zdať skľučujúce, ale s niekoľkými pokynmi ľahko zvládnete základy.
- Použite parametrizované dotazy na ochranu pred bezpečnostnými chybami.
- Po dokončení načítania alebo aktualizácie údajov vždy zatvorte pripojenie k databáze.
- Udržujte svoju databázu, aby ste optimalizovali jej štruktúru, keď sa váš dátový model časom mení.
- Nezabudnite si vytvoriť záložné kópie pre prípad núdze.
Ako každá technológia, aj databázy sa vyvíjajú. Softvér sa aktualizuje, objavujú sa nové nástroje a objavujeme lepšie spôsoby, ako robiť veci. Je dobré byť informovaný a informovaný. Niektoré nástroje fungujú ako sprostredkovatelia, napr Entity Framework, čo uľahčuje písanie kódu súvisiaceho s databázou.
Ako posunúť svoju cestu VB.NET ďalej
VB.NET je vďaka svojmu hlboko zakorenenému prepojeniu s ekosystémom Microsoftu robustný a zároveň užívateľsky prívetivý. Ak chcete skutočne pochopiť jeho silu, začnite s oficiálnou dokumentáciou poskytnutou spoločnosťou Microsoft. Odtiaľ preskúmajte online kurzy, fóra a komunity, kde skúsení vývojári zdieľajú svoje znalosti a postrehy.
Pamätajte, že každý odborník bol raz začiatočník. S dôsledným úsilím, zvedavosťou a správnymi zdrojmi čoskoro zistíte, že sa vo VB.NET pohybujete s istotou a ľahkosťou. Ako postupujete, neváhajte experimentovať, klásť otázky a – čo je najdôležitejšie – užite si proces objavovania.