Exercice 5 ADO.NET Corrigé S1
Étape 1 : Créez une application console
Ouvrez Visual Studio et créez un nouveau projet Console Application.
Étape 2 : Ajouter les namespaces nécessaires
Ajoutez les directives using
pour inclure les bibliothèques ADO.NET nécessaires.
using System;
using System.Data.SqlClient;
Étape 3 : Écrire le code pour supprimer les données
Exemple de chaîne de connexion :
// Chaîne de connexion typique pour SQL Server local
string connectionString = "Data Source=localhost;Initial Catalog=NomDeVotreBaseDeDonnées;Integrated Security=True";
Code complet pour supprimer un enregistrement :
using System;
using System.Data.SqlClient;
class Program
{
static void Main(string[] args)
{
// Chaîne de connexion à la base de données
string connectionString = "Data Source=localhost;Initial Catalog=NomDeVotreBaseDeDonnées;Integrated Security=True";
// Demande à l'utilisateur de saisir l'ID de l'employé à supprimer
Console.Write("Entrez l'ID de l'employé à supprimer : ");
int employeeId;
while (!int.TryParse(Console.ReadLine(), out employeeId))
{
Console.Write("Veuillez entrer un ID valide : ");
}
// Requête SQL pour supprimer l'enregistrement de l'employé
string query = "DELETE FROM Employees WHERE ID = @ID";
// Utilisation de SqlConnection et SqlCommand pour supprimer les données
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(query, connection);
// Ajout du paramètre à la requête
command.Parameters.AddWithValue("@ID", employeeId);
try
{
// Ouverture de la connexion
connection.Open();
// Exécution de la requête
int rowsAffected = command.ExecuteNonQuery();
// Affichage du message de confirmation
if (rowsAffected > 0)
{
Console.WriteLine("Suppression réussie !");
}
else
{
Console.WriteLine("Aucun enregistrement trouvé avec cet ID.");
}
}
catch (SqlException ex)
{
// Gestion des erreurs de connexion ou de suppression
Console.WriteLine("Erreur lors de la suppression des données : " + ex.Message);
}
finally
{
// Fermeture de la connexion si elle est ouverte
if (connection.State == System.Data.ConnectionState.Open)
{
connection.Close();
Console.WriteLine("Connexion fermée.");
}
}
}
// Pause pour visualiser la sortie dans la console
Console.WriteLine("Appuyez sur une touche pour quitter...");
Console.ReadKey();
}
}
Explications :
-
connectionString
: La chaîne de connexion utilisée pour se connecter à votre base de données SQL Server. RemplacezNomDeVotreBaseDeDonnées
par le nom de votre base de données. -
Demande d'ID : Le programme demande à l'utilisateur d'entrer l'ID de l'employé dont l'enregistrement doit être supprimé.
-
int.TryParse
: Utilisé pour valider que l'entrée de l'utilisateur pour l'ID est un nombre entier valide. -
SqlCommand
: La classeSqlCommand
est utilisée pour exécuter la requête SQL de suppression. -
Paramètres de la requête : Le paramètre (
@ID
) est utilisé pour éviter les injections SQL et insérer la valeur de l'ID dans la requête SQL. -
ExecuteNonQuery
: Méthode deSqlCommand
utilisée pour exécuter des requêtes SQL qui ne retournent pas de données (comme une requête de suppression). -
Gestion des exceptions avec
try-catch
: Le bloctry-catch
gère les erreurs qui peuvent survenir lors de l'exécution de la requête ou de la connexion. -
connection.Close()
: Ferme la connexion à la base de données après l'exécution de la requête.
Testez votre programme
Lorsque vous exécutez ce programme, voici ce qui peut se produire :
- Si l'ID de l'employé est valide et que la suppression est réussie, un message de succès sera affiché.
- Si l'ID ne correspond à aucun enregistrement, un message indiquant qu'aucun enregistrement n'a été trouvé sera affiché.
- En cas de problème lors de la suppression (par exemple, si l'ID n'existe pas), un message d'erreur sera affiché.
Remarque :
- Assurez-vous que la table
Employees
existe dans votre base de données et que la colonneID
est correctement définie.
Pas encore de commentaires.
Ajouter un commentaire
Veuillez vous connecter pour ajouter un commentaire.