Découvrez comment émettre les commandes SQL les plus courantes à l'aide de VB.NET.
VB.NET offre une approche rationalisée des opérations de base de données, avec un cadre robuste. Grâce à sa puissance, vous pouvez obtenir des informations pertinentes rapidement et avec un minimum d'effort.
Jetez un œil à quelques exemples pratiques qui montrent comment utiliser VB.NET pour effectuer des requêtes SQL et voyez comment vous pouvez garantir que la récupération des données est à la fois efficace et efficiente.
Configuration de votre serveur SQL local
Commencez par configurer un serveur SQL pour tout revoir étape par étape. Dans les exemples ci-dessous, vous verrez un environnement Windows, mais si vous utilisez un système d'exploitation différent comme Linux et que vous disposez d'un serveur SQL différent, ne vous inquiétez pas; la logique générale restera la même.
En raison de sa simplicité et de son approche sans configuration, SQLite est un excellent choix pour les débutants.
Pour configurer les choses, créez un nouveau dossier, puis
ouvrir une invite de commande et accédez-y. Exécutez la commande suivante pour créer un nouveau projet .NET dans lequel vous pouvez utiliser le langage VB.NET :dotnet new console -lang VB -o MyVBApp
Vous avez maintenant un projet appelé MonVBApp. Continuez la configuration en intégrant le package SQLite dans votre projet VB.NET à l'aide de NuGet, un gestionnaire de packages populaire pour .NET. Exécutez cette commande :
dotnet add package System.Data.SQLite
Après avoir ajouté SQLite, vous pouvez configurer une base de données locale sans effort.
Vous pouvez trouver tout le code de ces exemples dans le dossier du projet Dépôt GitHub.
Téléchargez le InitializeDatabase.vb fichier du référentiel du projet. Ce fichier particulier vous aidera à configurer votre base de données. Comme vous pouvez le voir dans ce fichier, il existe certains utilisateurs et pays d'utilisateurs. Vous pouvez l'utiliser comme exemple de base de données.
La commande que vous avez utilisée pour créer le projet VB.NET a créé un fichier nommé Programme.vb. Ouvrez ce fichier et mettez-le à jour comme suit :
Module Program
Sub Main(args AsString())
DatabaseInitializer.InitializeDb()
EndSub
EndModule
Exécutez ce programme et vous devriez le voir créer un fichier nommé mabase de données.db. Il s'agit de la base de données simple que vous utiliserez dans les exemples suivants.
Établir une connexion à une base de données avec SQL dans VB.NET
L'établissement d'une connexion à l'aide de SQLite dans VB.NET est simple. Continuez à modifier le Programme.vb et supprimez le contenu existant du sous-programme Main. Ce fichier constitue le noyau du projet.
Vous pouvez définir une connexion au fichier de base de données, mydatabase.db, avec cette ligne de code :
Dim connectionString AsString = "Data Source=mydatabase.db; Version=3;"
La source de données spécifie le nom du fichier de base de données. Si le fichier n'existe pas, SQLite créera une nouvelle base de données lorsqu'il établira une connexion.
L'étape suivante consiste à utiliser le SQLiteConnexion classe pour créer une instance de connexion. Vous devriez toujours utiliser un En utilisant bloquer lorsque vous travaillez avec des connexions à la base de données pour éviter des fuites ou des blocages potentiels :
Using conn AsNew SQLiteConnection(connectionString)
conn.Open()
' Database operations go here
EndUsing
Le bloc Using garantit que la connexion est automatiquement fermée une fois terminée.
Votre fichier Program.vb final devrait ressembler à ceci :
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
Ce code se connectera à la base de données mydatabase.db et imprimera un message de confirmation en cas de succès. Si une erreur se produit, les détails seront imprimés sur la console.
Comment récupérer des données et les charger dans un tableau
Le SÉLECTIONNERCommande SQL est le principal moyen de récupérer des données à partir d'une base de données SQL. Si vous avez une table nommée Utilisateurs dans votre base de données et vous souhaitez obtenir le Nom champ de chaque enregistrement de cette table, utilisez SELECT comme ceci :
SELECT Name FROM Users
Vous pouvez extraire des données de la base de données et les charger dans un tableau en ajoutant cette requête au fichier 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
Vous verrez une liste de noms sur la console, correspondant au contenu de votre table de base de données :
Ce code charge les données dans un Liste structure - qui a une taille dynamique - avant de la convertir en tableau une fois terminée. Cette approche est très utile dans les situations où vous ne connaissez pas à l’avance le nombre d’enregistrements que vous récupérerez.
Comment utiliser INSERT pour ajouter des données à une base de données
Vous pouvez utiliser le INSÉRER DANS commande pour ajouter de nouvelles données à une base de données. Par exemple, considérons le Utilisateurs table comportant deux colonnes nommées Nom et Pays.
La requête SQL de base que vous pouvez utiliser pour ajouter un nouvel utilisateur serait :
INSERT INTO Users (Name, Country) VALUES ('Fatih', 'TR')
Pour ajouter un nouvel utilisateur à la base de données à l'aide de cette requête, mettez à jour le fichier Program.vb comme suit :
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!")
Cet exemple simple utilise l'interpolation de chaîne pour créer la requête, mais vous devez éviter cela dans le code de production car c'est vulnérable à l'injection SQL. L'alternative réside dans les requêtes paramétrées qui rendent les opérations de base de données plus sûres et plus efficaces.
Les requêtes paramétrées utilisent des espaces réservés, au lieu d'une concaténation directe de chaînes, pour ajouter des valeurs aux requêtes SQL. Cette approche vous aidera à éviter de nombreuses menaces de sécurité :
Dim query AsString = "INSERT INTO Users (Name, Country) VALUES (@Name, @Country)"
'...
cmd.Parameters.AddWithValue("@Name", userName)
cmd.Parameters.AddWithValue("@Country", userCountry)
Autres conseils pour travailler avec une base de données à partir de VB.Net
Les opérations de base de données dans VB.NET peuvent sembler intimidantes au premier abord, mais avec quelques directives, vous pouvez facilement maîtriser les bases.
- Utilisez des requêtes paramétrées pour vous prémunir contre les vulnérabilités de sécurité.
- Fermez toujours votre connexion à la base de données lorsque vous avez fini de récupérer ou de mettre à jour les données.
- Entretenez votre base de données pour optimiser sa structure à mesure que votre modèle de données évolue au fil du temps.
- N'oubliez pas de faire des copies de sauvegarde en cas d'urgence.
Comme toute technologie, les bases de données évoluent. Les logiciels sont mis à jour, de nouveaux outils apparaissent et nous découvrons de meilleures façons de faire les choses. C'est une bonne idée de rester informé et mis à jour. Certains outils jouent le rôle d'intermédiaires, comme Cadre d'entité, ce qui facilite l'écriture du code lié à la base de données.
Comment aller plus loin dans votre parcours VB.NET
VB.NET, grâce à sa connexion profondément enracinée à l'écosystème Microsoft, est à la fois robuste et convivial. Pour vraiment comprendre sa puissance, commencez par la documentation officielle fournie par Microsoft. À partir de là, explorez les cours, forums et communautés en ligne, où des développeurs expérimentés partagent leurs connaissances et leurs idées.
N'oubliez pas que chaque expert était autrefois un débutant. Avec des efforts constants, de la curiosité et les bonnes ressources, vous vous retrouverez bientôt à naviguer dans VB.NET en toute confiance et facilité. Au fur et à mesure de votre progression, n'hésitez pas à expérimenter, à poser des questions et, surtout, à profiter du processus de découverte.