Exercice 2 ADO.NET Corrigé S1
Étape 1 : Créez une application console
Ouvrez Visual Studio et créez un projet Console Application.
Étape 2 : Ajouter les namespaces nécessaires
Ajoutez la directive using
pour inclure les bibliothèques ADO.NET nécessaires.
using System;
using System.Data.SqlClient;
Étape 3 : Écrire le code pour lire 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 lire les données :
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";
// Requête SQL pour sélectionner les données de la table Employees
string query = "SELECT ID, Name, Position FROM Employees";
// Utilisation de SqlConnection et SqlCommand pour lire les données
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(query, connection);
try
{
// Ouverture de la connexion
connection.Open();
// Exécution de la requête et obtention des résultats
SqlDataReader reader = command.ExecuteReader();
// Vérification si des enregistrements ont été retournés
if (reader.HasRows)
{
Console.WriteLine("ID\tName\tPosition");
Console.WriteLine("---------------------------");
// Lecture des enregistrements
while (reader.Read())
{
int id = reader.GetInt32(0); // ID (première colonne)
string name = reader.GetString(1); // Name (deuxième colonne)
string position = reader.GetString(2); // Position (troisième colonne)
// Affichage des résultats
Console.WriteLine($"{id}\t{name}\t{position}");
}
}
else
{
Console.WriteLine("Aucun enregistrement trouvé.");
}
// Fermeture du reader
reader.Close();
}
catch (SqlException ex)
{
// Gestion des erreurs de connexion ou de requête
Console.WriteLine("Erreur lors de la lecture 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. -
query
: La requête SQL qui sélectionne les colonnesID
,Name
, etPosition
de la tableEmployees
. -
SqlCommand
: La classeSqlCommand
est utilisée pour exécuter la requête SQL. -
SqlDataReader
: La classeSqlDataReader
est utilisée pour lire les données retournées par la requête SQL. Vous pouvez accéder aux données des colonnes en utilisant des méthodes telles queGetInt32
etGetString
. -
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. -
reader.Close()
: Ferme leSqlDataReader
après la lecture des données. -
connection.Close()
: Ferme la connexion à la base de données après la lecture des données.
Testez votre programme
Lorsque vous exécutez ce programme, voici ce qui peut se produire :
- Les enregistrements de la table
Employees
seront affichés dans la console si la connexion et la requête sont réussies. - Si aucune donnée n'est trouvée, le message "Aucun enregistrement trouvé." sera affiché.
- Si une erreur survient, un message d'erreur sera affiché.
Remarque :
- Assurez-vous que la table
Employees
existe dans votre base de données et que les colonnesID
,Name
, etPosition
sont correctement définies. - Vous pouvez adapter la requête SQL et les méthodes de lecture en fonction de la structure réelle de votre table.
Pas encore de commentaires.
Ajouter un commentaire
Veuillez vous connecter pour ajouter un commentaire.