Vous êtes sur la page 1sur 4

Universit Mhamed Bougara-Boumerdes

Facult des sciences


Dpatement dinfotronique, spcialit Gnie Biomdical

Mr.Omari

TD 5 REALISATION DUN ANNUAIRE ELECTRONIQUE


Dans ce TP on sintresse au dveloppement dun programme grant un fichier des amis. Pour
chacun deux, on souhaite connatre le nom, le prnom et le numro de Tlphone.
Faites en sorte que le programme puisse permettre lutilisateur de :

Saisir un nouvel ami.


Chercher un ami.
Supprimer lami qui vous a fait une embrouille.
Modifier le numro de tlphone dun ami.
Afficher le nombre damis. (Ben oui, il faudra chercher !)
Quitter.

Dans la ralisation de ce projet suivez les tapes suivantes :


1.

Raliser une table sur Acces contenant les champs suivants : Nom, Prenom et Telephone

2.

Lancer C# crer la premire interface puis increr le tableau.

Linsertion des Textbox Nom, Prenom, N Telephone et ID se fait directement depuis la fentre Data
Source. Il suffit de slectionner le type Textbox pour les diffrents champs puis glisser les sur la fentre
de dveloppement. (vous pouvez modifier le non des TextBox)
3.

Dans la liste des bibliothques ajoutez :


using System.Data.OleDb;

Universit Mhamed Bougara-Boumerdes


Facult des sciences
Dpatement dinfotronique, spcialit Gnie Biomdical

Mr.Omari

4.

Dans la dclaration gnrale insrer les lignes suivantes : Mycon (ma connexion) et cmd (commande)

namespace Annuaire
{
public partial class Form1 : Form
{
// Dclararion de la connction de la base de donnes Acsses
OleDbConnection Mycon = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source= D:\Boumerdes\20152016\Annuaire\annuaire.accdb");
OleDbCommand cmd; // cration d'une variable commande appele cmd
public Form1()
{

5.

Afin de charger le contenu de la base de donne dans le DataGridView crez la fonction affiche ci-dessous :

public void afficher()


{
try
{
DataTable dt = new DataTable();
// dclation d'une variable datatable dt
OleDbDataAdapter da = new OleDbDataAdapter("Select * from Annuaire", Mycon)

//Executer la requte et

retourne la table trouve


da.Fill(dt);
// Remplir le tableau dt par le rsultat trouv

annuaireBindingSource.DataSource = dt;

// lier la table avec le BindingSource pour l'afficher dans le DataGridView

}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}

6.

dans le bouton New insrez le code suivant :

private void BT_new_Click(object sender, EventArgs e)


{
Nom_TB.Text = "";
Prenom_TB.Text = "";
Tel_TB.Text = "";
}

7.

Dans le bouton Add inser le code suivant :

private void Add_BT_Click(object sender, EventArgs e)


{
//---Requete d'insertion---------------------------------------string req = "Insert Into Annuaire(Nom,Prenom,Telephone)VALUES('" + Nom_TB.Text + "','" + Prenom_TB.Text
+ "','" + NumTel_TB.Text + "')";
try
{
cmd = new OleDbCommand(req, Mycon); //Prparion de la nouvelle commande
Mycon.Open();
//Ouvrir la connection avec la base de donnes
cmd.ExecuteNonQuery();
// Execution de la requete
MessageBox.Show("Added with succesfful");
Mycon.Close();
//fermer la connection
afficher();
// Rcuprer touts les enregistrements y compris le dernier ajout
//Form1_Load(sender, e);
// Actualiser l'affichage
}
catch (Exception ex)

Universit Mhamed Bougara-Boumerdes


Facult des sciences
Dpatement dinfotronique, spcialit Gnie Biomdical

Mr.Omari
{
MessageBox.Show(ex.Message);

// Afficher le message d'erreur

}
}

8. Dans le bouton Delete insrez le code suivant :


//-----------------------------------Requte de suppression---------------------------------------string req = "DELETE FROM Annuaire WHERE N = " + ID_TB.Text + ";";
// il suffit de supprimer le ID porteur de la cl primaire afin de supprimer tout l'enregistrement
cmd = new OleDbCommand(req, Mycon);
try
{
if (MessageBox.Show("Vous voulez vraiment Supprimer l'enregistrement ?",
"Confirmation", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
Mycon.Open();
cmd.ExecuteNonQuery();
Mycon.Close();
afficher();
Form1_Load(sender, e);
}
}
catch (Exception exp)
{
MessageBox.Show(exp.ToString());
}

9.

Dans le bouton Update insrez le code suivant :

//-----------------------------------Requete de mis jour Update-------------------------------------string req = "UPDATE Annuaire SET Nom='" + Nom_TB.Text + "',Prenom='" + Prenom_TB.Text +
"',Telephone='" + Tel_TB.Text + "' WHERE N = " + ID_TB.Text + ";";
try
{
cmd = new OleDbCommand(req, Mycon);
Mycon.Open();
cmd.ExecuteNonQuery();
MessageBox.Show("Updated with succesfful");
Mycon.Close();
afficher();
//Form1_Load(sender, e);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}

Universit Mhamed Bougara-Boumerdes


Facult des sciences
Dpatement dinfotronique, spcialit Gnie Biomdical

Mr.Omari

10. Dans le bouton Search insrez le code suivant :


//-----------------------------------Requete de Recherche---------------------------------------string req = "SELECT * FROM Annuaire where Nom ='" + textBox2.Text + "';"; // le symbole * indique ALL

try
{

// Aprs la recherche la table sera actualise


DataTable dt = new DataTable();
// dclation d'une variable datatable dt
OleDbDataAdapter da = new OleDbDataAdapter(req, Mycon);
//Executer la requete et retourne la table trouve
da.Fill(dt);
// Remplir le tableau dt par le rsultat trouv
annuaireBindingSource.DataSource = dt;
// lier la table avec le BindingSource pour l'afficher dans le DataGridView

}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}

11. Insrez dans les boutons de navigation le code suivant


Insrez cette fonction
private void DisplayPosition()
{
Position_TB.Text = annuaireBindingSource.Position + 1 + " of " + annuaireBindingSource.Count;
}

Puis les code suivants :


Pour le bouton dplacer vers le premier :

annuaireBindingSource.MoveFirst();
DisplayPosition();

Pour le bouton dplacer vers le prcdent :


annuaireBindingSource.MovePrevious();
DisplayPosition();

Pour le bouton dplacer vers le suivant :


annuaireBindingSource.MoveNext();
DisplayPosition();

Pour le bouton dplacer vers le dernier


annuaireBindingSource.MoveLast();
DisplayPosition();

Vous aimerez peut-être aussi